From 14c9e36f5c8339b96acd5bd9fd15f40bff949f62 Mon Sep 17 00:00:00 2001 From: github-team-tf-cdk Date: Tue, 25 Oct 2022 09:10:56 +0000 Subject: [PATCH] chore(deps): upgrade provider project --- .gitattributes | 2 +- .github/workflows/automerge.yml | 32 - .github/workflows/build.yml | 6 +- .github/workflows/provider-upgrade.yml | 8 +- .github/workflows/release.yml | 16 +- .github/workflows/upgrade-main.yml | 4 +- .gitignore | 2 +- .mergify.yml | 43 + .npmignore | 1 + .projen/deps.json | 5 + .projen/files.json | 2 +- API.md | 1253 +- package.json | 5 +- scripts/check-for-upgrades.js | 3 +- src/api-key/index.ts | 2 +- src/application-key/index.ts | 2 +- src/authn-mapping/index.ts | 2 +- src/child-organization/index.ts | 2 +- .../index.ts | 2 +- src/dashboard-json/index.ts | 2 +- src/dashboard-list/index.ts | 2 +- src/dashboard/index-structs/structs0.ts | 58 + src/dashboard/index-structs/structs1200.ts | 7016 +++-- src/dashboard/index-structs/structs1600.ts | 21842 ++++++++------- src/dashboard/index-structs/structs2000.ts | 22222 ++++++++-------- src/dashboard/index-structs/structs2400.ts | 18921 ++++++------- src/dashboard/index-structs/structs2800.ts | 20472 +++++++------- src/dashboard/index-structs/structs3200.ts | 1307 +- src/dashboard/index-structs/structs400.ts | 58 + src/dashboard/index-structs/structs800.ts | 87 + src/dashboard/index.ts | 2 +- src/data-datadog-api-key/index.ts | 2 +- src/data-datadog-application-key/index.ts | 2 +- .../index.ts | 2 +- src/data-datadog-dashboard-list/index.ts | 2 +- src/data-datadog-dashboard/index.ts | 2 +- src/data-datadog-ip-ranges/index.ts | 2 +- src/data-datadog-logs-indexes-order/index.ts | 2 +- src/data-datadog-logs-indexes/index.ts | 2 +- src/data-datadog-logs-pipelines/index.ts | 2 +- src/data-datadog-monitor/index.ts | 7 +- src/data-datadog-monitors/index.ts | 2 +- src/data-datadog-permissions/index.ts | 2 +- src/data-datadog-role/index.ts | 2 +- src/data-datadog-roles/index.ts | 2 +- .../index.ts | 2 +- .../index.ts | 97 +- .../index.ts | 2 +- .../index.ts | 2 +- .../index.ts | 2 +- .../index.ts | 2 +- src/data-datadog-synthetics-test/index.ts | 2 +- src/data-datadog-user/index.ts | 2 +- src/downtime/index.ts | 2 +- src/integration-aws-lambda-arn/index.ts | 2 +- src/integration-aws-log-collection/index.ts | 2 +- src/integration-aws-tag-filter/index.ts | 2 +- src/integration-aws/index.ts | 2 +- src/integration-azure/index.ts | 2 +- src/integration-gcp/index.ts | 2 +- .../index.ts | 2 +- .../index.ts | 2 +- src/integration-pagerduty/index.ts | 2 +- src/integration-slack-channel/index.ts | 2 +- src/logs-archive-order/index.ts | 2 +- src/logs-archive/index.ts | 2 +- src/logs-custom-pipeline/index.ts | 2 +- src/logs-index-order/index.ts | 2 +- src/logs-index/index.ts | 2 +- src/logs-integration-pipeline/index.ts | 2 +- src/logs-metric/index.ts | 2 +- src/logs-pipeline-order/index.ts | 2 +- src/metric-metadata/index.ts | 2 +- src/metric-tag-configuration/index.ts | 2 +- src/monitor-json/index.ts | 2 +- src/monitor/index.ts | 26 +- src/organization-settings/index.ts | 2 +- src/provider/index.ts | 2 +- src/role/index.ts | 2 +- src/rum-application/index.ts | 2 +- src/security-monitoring-default-rule/index.ts | 2 +- src/security-monitoring-filter/index.ts | 2 +- src/security-monitoring-rule/index.ts | 284 +- src/service-definition-yaml/index.ts | 2 +- src/service-level-objective/index.ts | 2 +- src/slo-correction/index.ts | 2 +- src/synthetics-global-variable/index.ts | 2 +- src/synthetics-private-location/index.ts | 2 +- src/synthetics-test/index.ts | 31 +- src/user/index.ts | 2 +- src/version.json | 2 +- src/webhook-custom-variable/index.ts | 2 +- src/webhook/index.ts | 2 +- yarn.lock | 39 +- 94 files changed, 48484 insertions(+), 45495 deletions(-) delete mode 100644 .github/workflows/automerge.yml create mode 100644 .mergify.yml diff --git a/.gitattributes b/.gitattributes index a76d6b5e3..90b078a15 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3,7 +3,6 @@ /.gitattributes linguist-generated /.github/ISSUE_TEMPLATE/config.yml linguist-generated /.github/pull_request_template.md linguist-generated -/.github/workflows/automerge.yml linguist-generated /.github/workflows/build.yml linguist-generated /.github/workflows/next-cdktf-version-pr.yml linguist-generated /.github/workflows/provider-upgrade.yml linguist-generated @@ -11,6 +10,7 @@ /.github/workflows/release.yml linguist-generated /.github/workflows/upgrade-main.yml linguist-generated /.gitignore linguist-generated +/.mergify.yml linguist-generated /.npmignore linguist-generated /.projen/** linguist-generated /.projen/deps.json linguist-generated diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml deleted file mode 100644 index e65a9a7c7..000000000 --- a/.github/workflows/automerge.yml +++ /dev/null @@ -1,32 +0,0 @@ -# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". - -name: automerge -on: - pull_request: - types: - - labeled - - unlabeled - - synchronize - - opened - - edited - - ready_for_review - - reopened - - unlocked - pull_request_review: - types: - - submitted - check_suite: - types: - - completed - status: {} -jobs: - automerge: - runs-on: ubuntu-latest - permissions: {} - steps: - - name: automerge - uses: pascalgn/automerge-action@v0.14.2 - env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} - MERGE_RETRIES: "20" - MERGE_RETRY_SLEEP: "300000" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f0c26d57b..af297e322 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,10 +34,10 @@ jobs: id: self_mutation run: |- git add . - git diff --staged --patch --exit-code > .repo.patch || echo "::set-output name=self_mutation_happened::true" + git diff --staged --patch --exit-code > .repo.patch || echo "self_mutation_happened=true" >> $GITHUB_OUTPUT - name: Upload patch if: steps.self_mutation.outputs.self_mutation_happened - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: .repo.patch path: .repo.patch @@ -51,7 +51,7 @@ jobs: run: cd dist && getfacl -R . > permissions-backup.acl continue-on-error: true - name: Upload artifact - uses: actions/upload-artifact@v2.1.1 + uses: actions/upload-artifact@v3 with: name: build-artifact path: dist diff --git a/.github/workflows/provider-upgrade.yml b/.github/workflows/provider-upgrade.yml index 72ccc5837..1c6f0512b 100644 --- a/.github/workflows/provider-upgrade.yml +++ b/.github/workflows/provider-upgrade.yml @@ -19,17 +19,17 @@ jobs: - run: yarn install - id: check_version run: yarn check-if-new-provider-version - - if: ${{ steps.check_version.new_version == 'available' }} + - if: ${{ steps.check_version.outputs.new_version == 'available' }} env: CHECKPOINT_DISABLE: "1" GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: yarn fetch - - if: ${{ steps.check_version.new_version == 'available' }} + - if: ${{ steps.check_version.outputs.new_version == 'available' }} run: yarn compile - - if: ${{ steps.check_version.new_version == 'available' }} + - if: ${{ steps.check_version.outputs.new_version == 'available' }} run: yarn docgen - name: Create Pull Request - if: ${{ steps.check_version.new_version == 'available' }} + if: ${{ steps.check_version.outputs.new_version == 'available' }} uses: peter-evans/create-pull-request@v3 with: commit-message: "chore: upgrade provider" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index ccb58caa6..1dc4a0144 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -37,14 +37,14 @@ jobs: run: npx projen release - name: Check for new commits or cancel via faking a SHA if release was cancelled id: git_remote - run: node ./scripts/should-release.js && echo ::set-output name=latest_commit::"$(git ls-remote origin -h ${{ github.ref }} | cut -f1)" || echo ::set-output name=latest_commit::"release_cancelled" + run: node ./scripts/should-release.js && echo "latest_commit=$(git ls-remote origin -h ${{ github.ref }} | cut -f1)" >> $GITHUB_OUTPUT || echo "latest_commit=release_cancelled" >> $GITHUB_OUTPUT - name: Backup artifact permissions if: ${{ steps.git_remote.outputs.latest_commit == github.sha }} run: cd dist && getfacl -R . > permissions-backup.acl continue-on-error: true - name: Upload artifact if: ${{ steps.git_remote.outputs.latest_commit == github.sha }} - uses: actions/upload-artifact@v2.1.1 + uses: actions/upload-artifact@v3 with: name: build-artifact path: dist @@ -86,7 +86,7 @@ jobs: - name: Extract Version id: extract-version if: ${{ failure() }} - run: echo "::set-output name=VERSION::$(cat dist/version.txt)" + run: echo "VERSION=$(cat dist/version.txt)" >> $GITHUB_OUTPUT - name: Create Issue if: ${{ failure() }} uses: imjohnbo/issue-bot@v3 @@ -136,7 +136,7 @@ jobs: - name: Extract Version id: extract-version if: ${{ failure() }} - run: echo "::set-output name=VERSION::$(cat dist/version.txt)" + run: echo "VERSION=$(cat dist/version.txt)" >> $GITHUB_OUTPUT - name: Create Issue if: ${{ failure() }} uses: imjohnbo/issue-bot@v3 @@ -193,7 +193,7 @@ jobs: - name: Extract Version id: extract-version if: ${{ failure() }} - run: echo "::set-output name=VERSION::$(cat dist/version.txt)" + run: echo "VERSION=$(cat dist/version.txt)" >> $GITHUB_OUTPUT - name: Create Issue if: ${{ failure() }} uses: imjohnbo/issue-bot@v3 @@ -245,7 +245,7 @@ jobs: - name: Extract Version id: extract-version if: ${{ failure() }} - run: echo "::set-output name=VERSION::$(cat dist/version.txt)" + run: echo "VERSION=$(cat dist/version.txt)" >> $GITHUB_OUTPUT - name: Create Issue if: ${{ failure() }} uses: imjohnbo/issue-bot@v3 @@ -296,7 +296,7 @@ jobs: - name: Extract Version id: extract-version if: ${{ failure() }} - run: echo "::set-output name=VERSION::$(cat dist/version.txt)" + run: echo "VERSION=$(cat dist/version.txt)" >> $GITHUB_OUTPUT - name: Create Issue if: ${{ failure() }} uses: imjohnbo/issue-bot@v3 @@ -349,7 +349,7 @@ jobs: - name: Extract Version id: extract-version if: ${{ failure() }} - run: echo "::set-output name=VERSION::$(cat dist/version.txt)" + run: echo "VERSION=$(cat dist/version.txt)" >> $GITHUB_OUTPUT - name: Create Issue if: ${{ failure() }} uses: imjohnbo/issue-bot@v3 diff --git a/.github/workflows/upgrade-main.yml b/.github/workflows/upgrade-main.yml index c40f02b17..0696149e9 100644 --- a/.github/workflows/upgrade-main.yml +++ b/.github/workflows/upgrade-main.yml @@ -30,10 +30,10 @@ jobs: id: create_patch run: |- git add . - git diff --staged --patch --exit-code > .repo.patch || echo "::set-output name=patch_created::true" + git diff --staged --patch --exit-code > .repo.patch || echo "patch_created=true" >> $GITHUB_OUTPUT - name: Upload patch if: steps.create_patch.outputs.patch_created - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: .repo.patch path: .repo.patch diff --git a/.gitignore b/.gitignore index 8ecbb1653..ab7b74256 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ !/.projen/tasks.json !/.projen/deps.json !/.projen/files.json +!/.mergify.yml !/.github/workflows/pull-request-lint.yml !/package.json !/LICENSE @@ -52,7 +53,6 @@ package-lock.json !/README.md !/scripts/check-for-upgrades.js !/.github/workflows/provider-upgrade.yml -!/.github/workflows/automerge.yml !/.github/ISSUE_TEMPLATE/config.yml !/.github/workflows/next-cdktf-version-pr.yml !/scripts/should-release.js diff --git a/.mergify.yml b/.mergify.yml new file mode 100644 index 000000000..21662cf57 --- /dev/null +++ b/.mergify.yml @@ -0,0 +1,43 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +queue_rules: + - name: default + conditions: + - "#approved-reviews-by>=1" + - -label~=(do-not-merge) + - status-success=build + - status-success=package-js + - status-success=package-java + - status-success=package-python + - status-success=package-dotnet + - status-success=package-go +pull_request_rules: + - name: Automatically approve PRs with automerge label + actions: + review: + type: APPROVE + message: Automatically approved due to label + conditions: + - label=automerge + - -label~=(do-not-merge) + - -draft + - author=team-tf-cdk + - name: Automatic merge on approval and successful build + actions: + delete_head_branch: {} + queue: + method: squash + name: default + commit_message_template: |- + {{ title }} (#{{ number }}) + + {{ body }} + conditions: + - "#approved-reviews-by>=1" + - -label~=(do-not-merge) + - status-success=build + - status-success=package-js + - status-success=package-java + - status-success=package-python + - status-success=package-dotnet + - status-success=package-go diff --git a/.npmignore b/.npmignore index d91779a6e..7611bc877 100644 --- a/.npmignore +++ b/.npmignore @@ -3,6 +3,7 @@ permissions-backup.acl /dist/changelog.md /dist/version.txt +/.mergify.yml /test/ /tsconfig.dev.json /src/ diff --git a/.projen/deps.json b/.projen/deps.json index 6685fdc11..896053ed7 100644 --- a/.projen/deps.json +++ b/.projen/deps.json @@ -1,5 +1,10 @@ { "dependencies": [ + { + "name": "@actions/core", + "version": "^1.1.0", + "type": "build" + }, { "name": "@cdktf/provider-project", "version": "^0.2.8", diff --git a/.projen/files.json b/.projen/files.json index 0edde98a7..0c238cae9 100644 --- a/.projen/files.json +++ b/.projen/files.json @@ -3,7 +3,6 @@ ".gitattributes", ".github/ISSUE_TEMPLATE/config.yml", ".github/pull_request_template.md", - ".github/workflows/automerge.yml", ".github/workflows/build.yml", ".github/workflows/next-cdktf-version-pr.yml", ".github/workflows/provider-upgrade.yml", @@ -11,6 +10,7 @@ ".github/workflows/release.yml", ".github/workflows/upgrade-main.yml", ".gitignore", + ".mergify.yml", ".projen/deps.json", ".projen/files.json", ".projen/tasks.json", diff --git a/API.md b/API.md index 1c43dd754..c63df0482 100644 --- a/API.md +++ b/API.md @@ -627,6 +627,9 @@ Name|Description [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinitionCustomLinkList](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinitioncustomlinklist)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinitionCustomLinkOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinitioncustomlinkoutputreference)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinitionoutputreference)|*No description* +[dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionoutputreference)|*No description* +[dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestoutputreference)|*No description* +[dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestqueryoutputreference)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkList](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitioncustomlinklist)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitioncustomlinkoutputreference)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionlegendinlineoutputreference)|*No description* @@ -1190,6 +1193,9 @@ Name|Description [dashboard.DashboardWidgetServicemapDefinitionCustomLinkList](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinitioncustomlinklist)|*No description* [dashboard.DashboardWidgetServicemapDefinitionCustomLinkOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinitioncustomlinkoutputreference)|*No description* [dashboard.DashboardWidgetServicemapDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinitionoutputreference)|*No description* +[dashboard.DashboardWidgetSloListDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionoutputreference)|*No description* +[dashboard.DashboardWidgetSloListDefinitionRequestOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestoutputreference)|*No description* +[dashboard.DashboardWidgetSloListDefinitionRequestQueryOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestqueryoutputreference)|*No description* [dashboard.DashboardWidgetSunburstDefinitionCustomLinkList](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitioncustomlinklist)|*No description* [dashboard.DashboardWidgetSunburstDefinitionCustomLinkOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitioncustomlinkoutputreference)|*No description* [dashboard.DashboardWidgetSunburstDefinitionLegendInlineOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionlegendinlineoutputreference)|*No description* @@ -1487,6 +1493,8 @@ Name|Description [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesQueryAgentRuleOutputReference](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesqueryagentruleoutputreference)|*No description* [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesQueryList](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesquerylist)|*No description* [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesQueryOutputReference](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesqueryoutputreference)|*No description* +[dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQueryList](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulessignalquerylist)|*No description* +[dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulessignalqueryoutputreference)|*No description* [dataDatadogServiceLevelObjective.DataDatadogServiceLevelObjective](#cdktf-provider-datadog-datadatadogservicelevelobjective-datadatadogservicelevelobjective)|Represents a {@link https://www.terraform.io/docs/providers/datadog/d/service_level_objective datadog_service_level_objective}. [dataDatadogServiceLevelObjectives.DataDatadogServiceLevelObjectives](#cdktf-provider-datadog-datadatadogservicelevelobjectives-datadatadogservicelevelobjectives)|Represents a {@link https://www.terraform.io/docs/providers/datadog/d/service_level_objectives datadog_service_level_objectives}. [dataDatadogServiceLevelObjectives.DataDatadogServiceLevelObjectivesSlosList](#cdktf-provider-datadog-datadatadogservicelevelobjectives-datadatadogservicelevelobjectivessloslist)|*No description* @@ -1622,6 +1630,8 @@ Name|Description [securityMonitoringRule.SecurityMonitoringRuleQueryAgentRuleOutputReference](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequeryagentruleoutputreference)|*No description* [securityMonitoringRule.SecurityMonitoringRuleQueryList](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequerylist)|*No description* [securityMonitoringRule.SecurityMonitoringRuleQueryOutputReference](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequeryoutputreference)|*No description* +[securityMonitoringRule.SecurityMonitoringRuleSignalQueryList](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquerylist)|*No description* +[securityMonitoringRule.SecurityMonitoringRuleSignalQueryOutputReference](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalqueryoutputreference)|*No description* [serviceDefinitionYaml.ServiceDefinitionYaml](#cdktf-provider-datadog-servicedefinitionyaml-servicedefinitionyaml)|Represents a {@link https://www.terraform.io/docs/providers/datadog/r/service_definition_yaml datadog_service_definition_yaml}. [serviceLevelObjective.ServiceLevelObjective](#cdktf-provider-datadog-servicelevelobjective-servicelevelobjective)|Represents a {@link https://www.terraform.io/docs/providers/datadog/r/service_level_objective datadog_service_level_objective}. [serviceLevelObjective.ServiceLevelObjectiveQueryOutputReference](#cdktf-provider-datadog-servicelevelobjective-servicelevelobjectivequeryoutputreference)|*No description* @@ -2130,6 +2140,9 @@ Name|Description [dashboard.DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicelevelobjectivedefinition)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinition)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinitionCustomLink](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinitioncustomlink)|*No description* +[dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinition)|*No description* +[dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequest)|*No description* +[dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestquery)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinition)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitioncustomlink)|*No description* [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionlegendinline)|*No description* @@ -2531,6 +2544,9 @@ Name|Description [dashboard.DashboardWidgetServiceLevelObjectiveDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetservicelevelobjectivedefinition)|*No description* [dashboard.DashboardWidgetServicemapDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinition)|*No description* [dashboard.DashboardWidgetServicemapDefinitionCustomLink](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinitioncustomlink)|*No description* +[dashboard.DashboardWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinition)|*No description* +[dashboard.DashboardWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequest)|*No description* +[dashboard.DashboardWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestquery)|*No description* [dashboard.DashboardWidgetSunburstDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinition)|*No description* [dashboard.DashboardWidgetSunburstDefinitionCustomLink](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitioncustomlink)|*No description* [dashboard.DashboardWidgetSunburstDefinitionLegendInline](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionlegendinline)|*No description* @@ -2738,6 +2754,7 @@ Name|Description [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesOptionsNewValueOptions](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesoptionsnewvalueoptions)|*No description* [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesQuery](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesquery)|*No description* [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesQueryAgentRule](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesqueryagentrule)|*No description* +[dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQuery](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulessignalquery)|*No description* [dataDatadogServiceLevelObjective.DataDatadogServiceLevelObjectiveConfig](#cdktf-provider-datadog-datadatadogservicelevelobjective-datadatadogservicelevelobjectiveconfig)|*No description* [dataDatadogServiceLevelObjectives.DataDatadogServiceLevelObjectivesConfig](#cdktf-provider-datadog-datadatadogservicelevelobjectives-datadatadogservicelevelobjectivesconfig)|*No description* [dataDatadogServiceLevelObjectives.DataDatadogServiceLevelObjectivesSlos](#cdktf-provider-datadog-datadatadogservicelevelobjectives-datadatadogservicelevelobjectivesslos)|*No description* @@ -2851,6 +2868,7 @@ Name|Description [securityMonitoringRule.SecurityMonitoringRuleOptionsNewValueOptions](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringruleoptionsnewvalueoptions)|*No description* [securityMonitoringRule.SecurityMonitoringRuleQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequery)|*No description* [securityMonitoringRule.SecurityMonitoringRuleQueryAgentRule](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequeryagentrule)|*No description* +[securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery)|*No description* [serviceDefinitionYaml.ServiceDefinitionYamlConfig](#cdktf-provider-datadog-servicedefinitionyaml-servicedefinitionyamlconfig)|*No description* [serviceLevelObjective.ServiceLevelObjectiveConfig](#cdktf-provider-datadog-servicelevelobjective-servicelevelobjectiveconfig)|*No description* [serviceLevelObjective.ServiceLevelObjectiveQuery](#cdktf-provider-datadog-servicelevelobjective-servicelevelobjectivequery)|*No description* @@ -7660,6 +7678,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -7667,6 +7686,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -7747,6 +7767,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetChangeDefinitionRequestQueryEventQuerySearchOutputReference @@ -8008,6 +8040,7 @@ putEventQuery(value: DashboardWidgetChangeDefinitionRequestQueryEventQuery): voi * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -14664,6 +14697,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -14671,6 +14705,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -14751,6 +14786,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearchOutputReference @@ -15012,6 +15059,7 @@ putEventQuery(value: DashboardWidgetGeomapDefinitionRequestQueryEventQuery): voi * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -18950,6 +18998,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -18957,6 +19006,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -19037,6 +19087,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuerySearchOutputReference @@ -19298,6 +19360,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequest * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -25954,6 +26017,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -25961,6 +26025,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -26041,6 +26106,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuerySearchOutputReference @@ -26302,6 +26379,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequest * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -36116,6 +36194,7 @@ putQuery(value: DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQ * **dataSource** (string) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `rum_issue_stream`, `apm_issue_stream`, `logs_pattern_stream`. * **indexes** (Array) List of indexes. __*Optional*__ * **queryString** (string) Widget query. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -36153,10 +36232,12 @@ Name | Type | Description **dataSource** | string | **indexes** | Array | **queryString** | string | +**storage** | string | **dataSourceInput**? | string | __*Optional*__ **indexesInput**? | Array | __*Optional*__ **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetliststreamdefinitionrequestquery) | __*Optional*__ **queryStringInput**? | string | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -36185,6 +36266,18 @@ resetQueryString(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetLogStreamDefinitionOutputReference @@ -36806,6 +36899,7 @@ Name | Type | Description **scatterplotDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionoutputreference) | **serviceLevelObjectiveDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicelevelobjectivedefinitionoutputreference) | **servicemapDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinitionoutputreference) | +**sloListDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionoutputreference) | **sunburstDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionoutputreference) | **timeseriesDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionoutputreference) | **toplistDefinition** | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionoutputreference) | @@ -36836,6 +36930,7 @@ Name | Type | Description **scatterplotDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinition) | __*Optional*__ **serviceLevelObjectiveDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicelevelobjectivedefinition) | __*Optional*__ **servicemapDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinition) | __*Optional*__ +**sloListDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinition) | __*Optional*__ **sunburstDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinition) | __*Optional*__ **timeseriesDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinition) | __*Optional*__ **toplistDefinitionInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinition) | __*Optional*__ @@ -37300,6 +37395,23 @@ putServicemapDefinition(value: DashboardWidgetGroupDefinitionWidgetServicemapDef +#### putSloListDefinition(value) + + + +```ts +putSloListDefinition(value: DashboardWidgetGroupDefinitionWidgetSloListDefinition): void +``` + +* **value** ([dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinition)) *No description* + * **request** ([dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequest)) request block. + * **title** (string) The title of the widget. __*Optional*__ + * **titleAlign** (string) The alignment of the widget's title. Valid values are `center`, `left`, `right`. __*Optional*__ + * **titleSize** (string) The size of the widget's title (defaults to 16). __*Optional*__ + + + + #### putSunburstDefinition(value) @@ -37711,6 +37823,18 @@ resetServicemapDefinition(): void +#### resetSloListDefinition() + + + +```ts +resetSloListDefinition(): void +``` + + + + + #### resetSunburstDefinition() @@ -41039,6 +41163,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -41046,6 +41171,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -41126,6 +41252,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference @@ -41387,6 +41525,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionReq * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -46210,6 +46349,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -46217,6 +46357,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -46297,6 +46438,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference @@ -46558,6 +46711,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionReq * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -49296,6 +49450,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerygroupby)> | __*Optional*__ @@ -49303,6 +49458,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -49383,6 +49539,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference @@ -49644,6 +49812,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRe * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -55312,6 +55481,205 @@ resetTitleSize(): void +## class DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dashboard + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**request** | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestoutputreference) | +**title** | string | +**titleAlign** | string | +**titleSize** | string | +**internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinition) | __*Optional*__ +**requestInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequest) | __*Optional*__ +**titleAlignInput**? | string | __*Optional*__ +**titleInput**? | string | __*Optional*__ +**titleSizeInput**? | string | __*Optional*__ + +### Methods + + +#### putRequest(value) + + + +```ts +putRequest(value: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest): void +``` + +* **value** ([dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequest)) *No description* + * **query** ([dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestquery)) query block. + * **requestType** (string) The request type for the SLO List request. Valid values are `slo_list`. + + + + +#### resetTitle() + + + +```ts +resetTitle(): void +``` + + + + + +#### resetTitleAlign() + + + +```ts +resetTitleAlign(): void +``` + + + + + +#### resetTitleSize() + + + +```ts +resetTitleSize(): void +``` + + + + + + + +## class DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dashboard + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**query** | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestqueryoutputreference) | +**requestType** | string | +**internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequest) | __*Optional*__ +**queryInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestquery) | __*Optional*__ +**requestTypeInput**? | string | __*Optional*__ + +### Methods + + +#### putQuery(value) + + + +```ts +putQuery(value: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery): void +``` + +* **value** ([dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestquery)) *No description* + * **queryString** (string) Widget query. + * **limit** (number) Maximum number of results to display in the table. __*Optional*__ + + + + + + +## class DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dashboard + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**limit** | number | +**queryString** | string | +**internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestquery) | __*Optional*__ +**limitInput**? | number | __*Optional*__ +**queryStringInput**? | string | __*Optional*__ + +### Methods + + +#### resetLimit() + + + +```ts +resetLimit(): void +``` + + + + + + + ## class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkList @@ -59284,6 +59652,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -59291,6 +59660,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -59371,6 +59741,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference @@ -59632,6 +60014,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionReque * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -65289,6 +65672,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -65296,6 +65680,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -65376,6 +65761,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference @@ -65637,6 +66034,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionReq * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -70676,6 +71074,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -70683,6 +71082,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -70763,6 +71163,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference @@ -71024,6 +71436,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionReques * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -74219,6 +74632,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -74226,6 +74640,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -74306,6 +74721,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference @@ -74567,6 +74994,7 @@ putEventQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionReques * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -83849,6 +84277,7 @@ putQuery(value: DashboardWidgetListStreamDefinitionRequestQuery): void * **dataSource** (string) Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `rum_issue_stream`, `apm_issue_stream`, `logs_pattern_stream`. * **indexes** (Array) List of indexes. __*Optional*__ * **queryString** (string) Widget query. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -83886,10 +84315,12 @@ Name | Type | Description **dataSource** | string | **indexes** | Array | **queryString** | string | +**storage** | string | **dataSourceInput**? | string | __*Optional*__ **indexesInput**? | Array | __*Optional*__ **internalValue**? | [dashboard.DashboardWidgetListStreamDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetliststreamdefinitionrequestquery) | __*Optional*__ **queryStringInput**? | string | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -83918,6 +84349,18 @@ resetQueryString(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetLogStreamDefinitionOutputReference @@ -84540,6 +84983,7 @@ Name | Type | Description **scatterplotDefinition** | [dashboard.DashboardWidgetScatterplotDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionoutputreference) | **serviceLevelObjectiveDefinition** | [dashboard.DashboardWidgetServiceLevelObjectiveDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetservicelevelobjectivedefinitionoutputreference) | **servicemapDefinition** | [dashboard.DashboardWidgetServicemapDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinitionoutputreference) | +**sloListDefinition** | [dashboard.DashboardWidgetSloListDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionoutputreference) | **sunburstDefinition** | [dashboard.DashboardWidgetSunburstDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionoutputreference) | **timeseriesDefinition** | [dashboard.DashboardWidgetTimeseriesDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionoutputreference) | **toplistDefinition** | [dashboard.DashboardWidgetToplistDefinitionOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionoutputreference) | @@ -84571,6 +85015,7 @@ Name | Type | Description **scatterplotDefinitionInput**? | [dashboard.DashboardWidgetScatterplotDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinition) | __*Optional*__ **serviceLevelObjectiveDefinitionInput**? | [dashboard.DashboardWidgetServiceLevelObjectiveDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetservicelevelobjectivedefinition) | __*Optional*__ **servicemapDefinitionInput**? | [dashboard.DashboardWidgetServicemapDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinition) | __*Optional*__ +**sloListDefinitionInput**? | [dashboard.DashboardWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinition) | __*Optional*__ **sunburstDefinitionInput**? | [dashboard.DashboardWidgetSunburstDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinition) | __*Optional*__ **timeseriesDefinitionInput**? | [dashboard.DashboardWidgetTimeseriesDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinition) | __*Optional*__ **toplistDefinitionInput**? | [dashboard.DashboardWidgetToplistDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinition) | __*Optional*__ @@ -85054,6 +85499,23 @@ putServicemapDefinition(value: DashboardWidgetServicemapDefinition): void +#### putSloListDefinition(value) + + + +```ts +putSloListDefinition(value: DashboardWidgetSloListDefinition): void +``` + +* **value** ([dashboard.DashboardWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinition)) *No description* + * **request** ([dashboard.DashboardWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequest)) request block. + * **title** (string) The title of the widget. __*Optional*__ + * **titleAlign** (string) The alignment of the widget's title. Valid values are `center`, `left`, `right`. __*Optional*__ + * **titleSize** (string) The size of the widget's title (defaults to 16). __*Optional*__ + + + + #### putSunburstDefinition(value) @@ -85477,6 +85939,18 @@ resetServicemapDefinition(): void +#### resetSloListDefinition() + + + +```ts +resetSloListDefinition(): void +``` + + + + + #### resetSunburstDefinition() @@ -88805,6 +89279,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -88812,6 +89287,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -88892,6 +89368,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference @@ -89153,6 +89641,7 @@ putEventQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery): * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -93976,6 +94465,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -93983,6 +94473,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -94063,6 +94554,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference @@ -94324,6 +94827,7 @@ putEventQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery): * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -97062,6 +97566,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerygroupby)> | __*Optional*__ @@ -97069,6 +97574,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -97149,6 +97655,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference @@ -97410,6 +97928,7 @@ putEventQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTable * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -103078,6 +103597,205 @@ resetTitleSize(): void +## class DashboardWidgetSloListDefinitionOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dashboard + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dashboard.DashboardWidgetSloListDefinitionOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**request** | [dashboard.DashboardWidgetSloListDefinitionRequestOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestoutputreference) | +**title** | string | +**titleAlign** | string | +**titleSize** | string | +**internalValue**? | [dashboard.DashboardWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinition) | __*Optional*__ +**requestInput**? | [dashboard.DashboardWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequest) | __*Optional*__ +**titleAlignInput**? | string | __*Optional*__ +**titleInput**? | string | __*Optional*__ +**titleSizeInput**? | string | __*Optional*__ + +### Methods + + +#### putRequest(value) + + + +```ts +putRequest(value: DashboardWidgetSloListDefinitionRequest): void +``` + +* **value** ([dashboard.DashboardWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequest)) *No description* + * **query** ([dashboard.DashboardWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestquery)) query block. + * **requestType** (string) The request type for the SLO List request. Valid values are `slo_list`. + + + + +#### resetTitle() + + + +```ts +resetTitle(): void +``` + + + + + +#### resetTitleAlign() + + + +```ts +resetTitleAlign(): void +``` + + + + + +#### resetTitleSize() + + + +```ts +resetTitleSize(): void +``` + + + + + + + +## class DashboardWidgetSloListDefinitionRequestOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dashboard + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dashboard.DashboardWidgetSloListDefinitionRequestOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**query** | [dashboard.DashboardWidgetSloListDefinitionRequestQueryOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestqueryoutputreference) | +**requestType** | string | +**internalValue**? | [dashboard.DashboardWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequest) | __*Optional*__ +**queryInput**? | [dashboard.DashboardWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestquery) | __*Optional*__ +**requestTypeInput**? | string | __*Optional*__ + +### Methods + + +#### putQuery(value) + + + +```ts +putQuery(value: DashboardWidgetSloListDefinitionRequestQuery): void +``` + +* **value** ([dashboard.DashboardWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestquery)) *No description* + * **queryString** (string) Widget query. + * **limit** (number) Maximum number of results to display in the table. __*Optional*__ + + + + + + +## class DashboardWidgetSloListDefinitionRequestQueryOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dashboard + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dashboard.DashboardWidgetSloListDefinitionRequestQueryOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**limit** | number | +**queryString** | string | +**internalValue**? | [dashboard.DashboardWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestquery) | __*Optional*__ +**limitInput**? | number | __*Optional*__ +**queryStringInput**? | string | __*Optional*__ + +### Methods + + +#### resetLimit() + + + +```ts +resetLimit(): void +``` + + + + + + + ## class DashboardWidgetSunburstDefinitionCustomLinkList @@ -107050,6 +107768,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -107057,6 +107776,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -107137,6 +107857,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference @@ -107398,6 +108130,7 @@ putEventQuery(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuery): v * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -113055,6 +113788,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -113062,6 +113796,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -113142,6 +113877,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference @@ -113403,6 +114150,7 @@ putEventQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery): * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -118442,6 +119190,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -118449,6 +119198,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -118529,6 +119279,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference @@ -118790,6 +119552,7 @@ putEventQuery(value: DashboardWidgetToplistDefinitionRequestQueryEventQuery): vo * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -121985,6 +122748,7 @@ Name | Type | Description **indexes** | Array | **name** | string | **search** | [dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerysearchoutputreference) | +**storage** | string | **computeInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQueryCompute](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerycompute)> | __*Optional*__ **dataSourceInput**? | string | __*Optional*__ **groupByInput**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerygroupby)> | __*Optional*__ @@ -121992,6 +122756,7 @@ Name | Type | Description **internalValue**? | [dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQuery](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquery) | __*Optional*__ **nameInput**? | string | __*Optional*__ **searchInput**? | [dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerysearch) | __*Optional*__ +**storageInput**? | string | __*Optional*__ ### Methods @@ -122072,6 +122837,18 @@ resetSearch(): void +#### resetStorage() + + + +```ts +resetStorage(): void +``` + + + + + ## class DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference @@ -122333,6 +123110,7 @@ putEventQuery(value: DashboardWidgetTreemapDefinitionRequestQueryEventQuery): vo * **groupBy** ([IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerygroupby)>) group_by block. __*Optional*__ * **indexes** (Array) An array of index names to query in the stream. __*Optional*__ * **search** ([dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerysearch)) search block. __*Optional*__ + * **storage** (string) Storage location (private beta). __*Optional*__ @@ -124296,6 +125074,7 @@ Name | Type | Description **newHostDelay** | number | **noDataTimeframe** | number | **notifyAudit** | [IResolvable](#cdktf-iresolvable) | +**notifyBy** | Array | **notifyNoData** | [IResolvable](#cdktf-iresolvable) | **onMissingData** | string | **query** | string | @@ -125995,6 +126774,7 @@ Name | Type | Description **name** | string | **options** | [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesOptionsList](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesoptionslist) | **query** | [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesQueryList](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulesquerylist) | +**signalQuery** | [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQueryList](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulessignalquerylist) | **tags** | Array | **type** | string | **internalValue**? | [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRules](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrules) | __*Optional*__ @@ -126181,6 +126961,97 @@ Name | Type | Description +## class DataDatadogSecurityMonitoringRulesRulesSignalQueryList + + + +__Implements__: [ITerraformAddressable](#cdktf-iterraformaddressable), [IResolvable](#cdktf-iresolvable) +__Submodule__: dataDatadogSecurityMonitoringRules + +__Extends__: [ComplexList](#cdktf-complexlist) + +### Initializer + + + + +```ts +new dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQueryList(terraformResource: IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. +* **wrapsSet** (boolean) whether the list is wrapping a set (will add tolist() to be able to access an item via an index). + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**terraformAttribute** | string | The attribute on the parent resource this class is referencing. +**terraformResource** | [IInterpolatingParent](#cdktf-iinterpolatingparent) | The parent resource. +**wrapsSet** | boolean | whether the list is wrapping a set (will add tolist() to be able to access an item via an index). + +### Methods + + +#### get(index) + + + +```ts +get(index: number): DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference +``` + +* **index** (number) the index of the item to return. + +__Returns__: +* [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulessignalqueryoutputreference) + + + +## class DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: dataDatadogSecurityMonitoringRules + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. +* **complexObjectIndex** (number) the index of this item in the list. +* **complexObjectIsFromSet** (boolean) whether the list is wrapping a set (will add tolist() to be able to access an item via an index). + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**aggregation** | string | +**correlatedByFields** | Array | +**correlatedQueryIndex** | string | +**defaultRuleId** | string | +**name** | string | +**ruleId** | string | +**internalValue**? | [dataDatadogSecurityMonitoringRules.DataDatadogSecurityMonitoringRulesRulesSignalQuery](#cdktf-provider-datadog-datadatadogsecuritymonitoringrules-datadatadogsecuritymonitoringrulesrulessignalquery) | __*Optional*__ + + + ## class DataDatadogServiceLevelObjective Represents a {@link https://www.terraform.io/docs/providers/datadog/d/service_level_objective datadog_service_level_objective}. @@ -134206,6 +135077,7 @@ new monitor.Monitor(scope: Construct, id: string, config: MonitorConfig) * **newHostDelay** (number) **Deprecated**. __*Optional*__ * **noDataTimeframe** (number) The number of minutes before a monitor will notify when data stops reporting. Provider defaults to 10 minutes. __*Optional*__ * **notifyAudit** (boolean | [IResolvable](#cdktf-iresolvable)) A boolean indicating whether tagged users will be notified on changes to this monitor. Defaults to `false`. __*Optional*__ + * **notifyBy** (Array) Controls what granularity a monitor alerts on. __*Optional*__ * **notifyNoData** (boolean | [IResolvable](#cdktf-iresolvable)) A boolean indicating whether this monitor will notify when data stops reporting. Defaults to `false`. __*Optional*__ * **onMissingData** (string) Controls how groups or monitors are treated if an evaluation does not return any data points. __*Optional*__ * **priority** (number) Integer from 1 (high) to 5 (low) indicating alert severity. __*Optional*__ @@ -134243,6 +135115,7 @@ Name | Type | Description **newHostDelay** | number | **noDataTimeframe** | number | **notifyAudit** | boolean | [IResolvable](#cdktf-iresolvable) | +**notifyBy** | Array | **notifyNoData** | boolean | [IResolvable](#cdktf-iresolvable) | **onMissingData** | string | **priority** | number | @@ -134274,6 +135147,7 @@ Name | Type | Description **newHostDelayInput**? | number | __*Optional*__ **noDataTimeframeInput**? | number | __*Optional*__ **notifyAuditInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ +**notifyByInput**? | Array | __*Optional*__ **notifyNoDataInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ **onMissingDataInput**? | string | __*Optional*__ **priorityInput**? | number | __*Optional*__ @@ -134521,6 +135395,18 @@ resetNotifyAudit(): void +#### resetNotifyBy() + + + +```ts +resetNotifyBy(): void +``` + + + + + #### resetNotifyNoData() @@ -137081,14 +137967,15 @@ new securityMonitoringRule.SecurityMonitoringRule(scope: Construct, id: string, * **case** ([IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleCase](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulecase)>) case block. * **message** (string) Message for generated signals. * **name** (string) The name of the rule. - * **query** ([IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequery)>) query block. * **enabled** (boolean | [IResolvable](#cdktf-iresolvable)) Whether the rule is enabled. __*Optional*__ * **filter** ([IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleFilter](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulefilter)>) filter block. __*Optional*__ * **hasExtendedTitle** (boolean | [IResolvable](#cdktf-iresolvable)) Whether the notifications include the triggering group-by values in their title. __*Optional*__ * **id** (string) Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#id SecurityMonitoringRule#id}. __*Optional*__ * **options** ([securityMonitoringRule.SecurityMonitoringRuleOptions](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringruleoptions)) options block. __*Optional*__ + * **query** ([IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequery)>) query block. __*Optional*__ + * **signalQuery** ([IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery)>) signal_query block. __*Optional*__ * **tags** (Array) Tags for generated signals. __*Optional*__ - * **type** (string) The rule type. Valid values are `log_detection`, `infrastructure_configuration`, `workload_security`, `cloud_configuration`. __*Optional*__ + * **type** (string) The rule type. Valid values are `log_detection`, `infrastructure_configuration`, `workload_security`, `cloud_configuration`, `signal_correlation`. __*Optional*__ @@ -137106,6 +137993,7 @@ Name | Type | Description **name** | string | **options** | [securityMonitoringRule.SecurityMonitoringRuleOptionsOutputReference](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringruleoptionsoutputreference) | **query** | [securityMonitoringRule.SecurityMonitoringRuleQueryList](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequerylist) | +**signalQuery** | [securityMonitoringRule.SecurityMonitoringRuleSignalQueryList](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquerylist) | **tags** | Array | **type** | string | **caseInput**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleCase](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulecase)> | __*Optional*__ @@ -137117,6 +138005,7 @@ Name | Type | Description **nameInput**? | string | __*Optional*__ **optionsInput**? | [securityMonitoringRule.SecurityMonitoringRuleOptions](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringruleoptions) | __*Optional*__ **queryInput**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequery)> | __*Optional*__ +**signalQueryInput**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery)> | __*Optional*__ **tagsInput**? | Array | __*Optional*__ **typeInput**? | string | __*Optional*__ *static* **tfResourceType** | string | @@ -137183,6 +138072,19 @@ putQuery(value: IResolvable | Array): void +#### putSignalQuery(value) + + + +```ts +putSignalQuery(value: IResolvable | Array): void +``` + +* **value** ([IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery)>) *No description* + + + + #### resetEnabled() @@ -137243,6 +138145,30 @@ resetOptions(): void +#### resetQuery() + + + +```ts +resetQuery(): void +``` + + + + + +#### resetSignalQuery() + + + +```ts +resetSignalQuery(): void +``` + + + + + #### resetTags() @@ -138064,6 +138990,167 @@ resetName(): void +## class SecurityMonitoringRuleSignalQueryList + + + +__Implements__: [ITerraformAddressable](#cdktf-iterraformaddressable), [IResolvable](#cdktf-iresolvable) +__Submodule__: securityMonitoringRule + +__Extends__: [ComplexList](#cdktf-complexlist) + +### Initializer + + + + +```ts +new securityMonitoringRule.SecurityMonitoringRuleSignalQueryList(terraformResource: IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. +* **wrapsSet** (boolean) whether the list is wrapping a set (will add tolist() to be able to access an item via an index). + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**terraformAttribute** | string | The attribute on the parent resource this class is referencing. +**terraformResource** | [IInterpolatingParent](#cdktf-iinterpolatingparent) | The parent resource. +**wrapsSet** | boolean | whether the list is wrapping a set (will add tolist() to be able to access an item via an index). +**internalValue**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery)> | __*Optional*__ + +### Methods + + +#### get(index) + + + +```ts +get(index: number): SecurityMonitoringRuleSignalQueryOutputReference +``` + +* **index** (number) the index of the item to return. + +__Returns__: +* [securityMonitoringRule.SecurityMonitoringRuleSignalQueryOutputReference](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalqueryoutputreference) + + + +## class SecurityMonitoringRuleSignalQueryOutputReference + + + +__Implements__: [IInterpolatingParent](#cdktf-iinterpolatingparent), [IResolvable](#cdktf-iresolvable), [ITerraformAddressable](#cdktf-iterraformaddressable) +__Submodule__: securityMonitoringRule + +__Extends__: [ComplexObject](#cdktf-complexobject) + +### Initializer + + + + +```ts +new securityMonitoringRule.SecurityMonitoringRuleSignalQueryOutputReference(terraformResource: IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) +``` + +* **terraformResource** ([IInterpolatingParent](#cdktf-iinterpolatingparent)) The parent resource. +* **terraformAttribute** (string) The attribute on the parent resource this class is referencing. +* **complexObjectIndex** (number) the index of this item in the list. +* **complexObjectIsFromSet** (boolean) whether the list is wrapping a set (will add tolist() to be able to access an item via an index). + + + +### Properties + + +Name | Type | Description +-----|------|------------- +**aggregation** | string | +**correlatedByFields** | Array | +**correlatedQueryIndex** | string | +**defaultRuleId** | string | +**name** | string | +**ruleId** | string | +**aggregationInput**? | string | __*Optional*__ +**correlatedByFieldsInput**? | Array | __*Optional*__ +**correlatedQueryIndexInput**? | string | __*Optional*__ +**defaultRuleIdInput**? | string | __*Optional*__ +**internalValue**? | [securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery) | [IResolvable](#cdktf-iresolvable) | __*Optional*__ +**nameInput**? | string | __*Optional*__ +**ruleIdInput**? | string | __*Optional*__ + +### Methods + + +#### resetAggregation() + + + +```ts +resetAggregation(): void +``` + + + + + +#### resetCorrelatedByFields() + + + +```ts +resetCorrelatedByFields(): void +``` + + + + + +#### resetCorrelatedQueryIndex() + + + +```ts +resetCorrelatedQueryIndex(): void +``` + + + + + +#### resetDefaultRuleId() + + + +```ts +resetDefaultRuleId(): void +``` + + + + + +#### resetName() + + + +```ts +resetName(): void +``` + + + + + + + ## class ServiceDefinitionYaml Represents a {@link https://www.terraform.io/docs/providers/datadog/r/service_definition_yaml datadog_service_definition_yaml}. @@ -139345,6 +140432,7 @@ putOptionsList(value: SyntheticsTestOptionsList): void * **allowInsecure** (boolean | [IResolvable](#cdktf-iresolvable)) Allows loading insecure content for an HTTP test. __*Optional*__ * **checkCertificateRevocation** (boolean | [IResolvable](#cdktf-iresolvable)) For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP. __*Optional*__ * **ci** ([syntheticsTest.SyntheticsTestOptionsListCi](#cdktf-provider-datadog-syntheticstest-syntheticstestoptionslistci)) ci block. __*Optional*__ + * **disableCors** (boolean | [IResolvable](#cdktf-iresolvable)) Disable Cross-Origin Resource Sharing for browser tests. __*Optional*__ * **disableCsp** (boolean | [IResolvable](#cdktf-iresolvable)) Disable Content Security Policy for browser tests. __*Optional*__ * **followRedirects** (boolean | [IResolvable](#cdktf-iresolvable)) Determines whether or not the API HTTP test should follow redirects. __*Optional*__ * **ignoreServerCertificateError** (boolean | [IResolvable](#cdktf-iresolvable)) Ignore server certificate error. __*Optional*__ @@ -142436,6 +143524,7 @@ Name | Type | Description **allowInsecure** | boolean | [IResolvable](#cdktf-iresolvable) | **checkCertificateRevocation** | boolean | [IResolvable](#cdktf-iresolvable) | **ci** | [syntheticsTest.SyntheticsTestOptionsListCiOutputReference](#cdktf-provider-datadog-syntheticstest-syntheticstestoptionslistcioutputreference) | +**disableCors** | boolean | [IResolvable](#cdktf-iresolvable) | **disableCsp** | boolean | [IResolvable](#cdktf-iresolvable) | **followRedirects** | boolean | [IResolvable](#cdktf-iresolvable) | **ignoreServerCertificateError** | boolean | [IResolvable](#cdktf-iresolvable) | @@ -142454,6 +143543,7 @@ Name | Type | Description **allowInsecureInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ **checkCertificateRevocationInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ **ciInput**? | [syntheticsTest.SyntheticsTestOptionsListCi](#cdktf-provider-datadog-syntheticstest-syntheticstestoptionslistci) | __*Optional*__ +**disableCorsInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ **disableCspInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ **followRedirectsInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ **ignoreServerCertificateErrorInput**? | boolean | [IResolvable](#cdktf-iresolvable) | __*Optional*__ @@ -142580,6 +143670,18 @@ resetCi(): void +#### resetDisableCors() + + + +```ts +resetDisableCors(): void +``` + + + + + #### resetDisableCsp() @@ -144109,6 +145211,7 @@ Name | Type | Description **scatterplotDefinition**? | [dashboard.DashboardWidgetScatterplotDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinition) | scatterplot_definition block.
__*Optional*__ **serviceLevelObjectiveDefinition**? | [dashboard.DashboardWidgetServiceLevelObjectiveDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetservicelevelobjectivedefinition) | service_level_objective_definition block.
__*Optional*__ **servicemapDefinition**? | [dashboard.DashboardWidgetServicemapDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetservicemapdefinition) | servicemap_definition block.
__*Optional*__ +**sloListDefinition**? | [dashboard.DashboardWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinition) | slo_list_definition block.
__*Optional*__ **sunburstDefinition**? | [dashboard.DashboardWidgetSunburstDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinition) | sunburst_definition block.
__*Optional*__ **timeseriesDefinition**? | [dashboard.DashboardWidgetTimeseriesDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinition) | timeseries_definition block.
__*Optional*__ **toplistDefinition**? | [dashboard.DashboardWidgetToplistDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinition) | toplist_definition block.
__*Optional*__ @@ -144514,6 +145617,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetChangeDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetchangedefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -145509,6 +146613,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGeomapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgeomapdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -145760,6 +146865,7 @@ Name | Type | Description **scatterplotDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinition) | scatterplot_definition block.
__*Optional*__ **serviceLevelObjectiveDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicelevelobjectivedefinition) | service_level_objective_definition block.
__*Optional*__ **servicemapDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetServicemapDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetservicemapdefinition) | servicemap_definition block.
__*Optional*__ +**sloListDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinition) | slo_list_definition block.
__*Optional*__ **sunburstDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinition) | sunburst_definition block.
__*Optional*__ **timeseriesDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinition) | timeseries_definition block.
__*Optional*__ **toplistDefinition**? | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinition](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinition) | toplist_definition block.
__*Optional*__ @@ -146165,6 +147271,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetchangedefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -147160,6 +148267,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetgeomapdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -148630,6 +149738,7 @@ Name | Type | Description **dataSource** | string | Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `rum_issue_stream`, `apm_issue_stream`, `logs_pattern_stream`. **indexes**? | Array | List of indexes.
__*Optional*__ **queryString**? | string | Widget query.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -149130,6 +150239,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetquerytabledefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -149840,6 +150950,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetqueryvaluedefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -150280,6 +151391,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -151153,6 +152265,50 @@ Name | Type | Description +## struct DashboardWidgetGroupDefinitionWidgetSloListDefinition + + + + + + +Name | Type | Description +-----|------|------------- +**request** | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequest) | request block. +**title**? | string | The title of the widget.
__*Optional*__ +**titleAlign**? | string | The alignment of the widget's title. Valid values are `center`, `left`, `right`.
__*Optional*__ +**titleSize**? | string | The size of the widget's title (defaults to 16).
__*Optional*__ + + + +## struct DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest + + + + + + +Name | Type | Description +-----|------|------------- +**query** | [dashboard.DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetslolistdefinitionrequestquery) | query block. +**requestType** | string | The request type for the SLO List request. Valid values are `slo_list`. + + + +## struct DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery + + + + + + +Name | Type | Description +-----|------|------------- +**queryString** | string | Widget query. +**limit**? | number | Maximum number of results to display in the table.
__*Optional*__ + + + ## struct DashboardWidgetGroupDefinitionWidgetSunburstDefinition @@ -151692,6 +152848,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgetsunburstdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -152507,6 +153664,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettimeseriesdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -153261,6 +154419,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettoplistdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -153771,6 +154930,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetgroupdefinitionwidgettreemapdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -155154,6 +156314,7 @@ Name | Type | Description **dataSource** | string | Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `rum_issue_stream`, `apm_issue_stream`, `logs_pattern_stream`. **indexes**? | Array | List of indexes.
__*Optional*__ **queryString**? | string | Widget query.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -155654,6 +156815,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetquerytabledefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -156364,6 +157526,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetqueryvaluedefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -156804,6 +157967,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetscatterplotdefinitionrequestscatterplottablequeryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -157677,6 +158841,50 @@ Name | Type | Description +## struct DashboardWidgetSloListDefinition + + + + + + +Name | Type | Description +-----|------|------------- +**request** | [dashboard.DashboardWidgetSloListDefinitionRequest](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequest) | request block. +**title**? | string | The title of the widget.
__*Optional*__ +**titleAlign**? | string | The alignment of the widget's title. Valid values are `center`, `left`, `right`.
__*Optional*__ +**titleSize**? | string | The size of the widget's title (defaults to 16).
__*Optional*__ + + + +## struct DashboardWidgetSloListDefinitionRequest + + + + + + +Name | Type | Description +-----|------|------------- +**query** | [dashboard.DashboardWidgetSloListDefinitionRequestQuery](#cdktf-provider-datadog-dashboard-dashboardwidgetslolistdefinitionrequestquery) | query block. +**requestType** | string | The request type for the SLO List request. Valid values are `slo_list`. + + + +## struct DashboardWidgetSloListDefinitionRequestQuery + + + + + + +Name | Type | Description +-----|------|------------- +**queryString** | string | Widget query. +**limit**? | number | Maximum number of results to display in the table.
__*Optional*__ + + + ## struct DashboardWidgetSunburstDefinition @@ -158216,6 +159424,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgetsunburstdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -159031,6 +160240,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettimeseriesdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -159785,6 +160995,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetToplistDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettoplistdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -160295,6 +161506,7 @@ Name | Type | Description **groupBy**? | [IResolvable](#cdktf-iresolvable) | Array<[dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupBy](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerygroupby)> | group_by block.
__*Optional*__ **indexes**? | Array | An array of index names to query in the stream.
__*Optional*__ **search**? | [dashboard.DashboardWidgetTreemapDefinitionRequestQueryEventQuerySearch](#cdktf-provider-datadog-dashboard-dashboardwidgettreemapdefinitionrequestqueryeventquerysearch) | search block.
__*Optional*__ +**storage**? | string | Storage location (private beta).
__*Optional*__ @@ -160932,6 +162144,12 @@ Name | Type | Description +## struct DataDatadogSecurityMonitoringRulesRulesSignalQuery + + + + + ## struct DataDatadogServiceLevelObjectiveConfig @@ -162433,6 +163651,7 @@ Name | Type | Description **newHostDelay**? | number | **Deprecated**.
__*Optional*__ **noDataTimeframe**? | number | The number of minutes before a monitor will notify when data stops reporting. Provider defaults to 10 minutes.
__*Optional*__ **notifyAudit**? | boolean | [IResolvable](#cdktf-iresolvable) | A boolean indicating whether tagged users will be notified on changes to this monitor. Defaults to `false`.
__*Optional*__ +**notifyBy**? | Array | Controls what granularity a monitor alerts on.
__*Optional*__ **notifyNoData**? | boolean | [IResolvable](#cdktf-iresolvable) | A boolean indicating whether this monitor will notify when data stops reporting. Defaults to `false`.
__*Optional*__ **onMissingData**? | string | Controls how groups or monitors are treated if an evaluation does not return any data points.
__*Optional*__ **priority**? | number | Integer from 1 (high) to 5 (low) indicating alert severity.
__*Optional*__ @@ -162894,7 +164113,6 @@ Name | Type | Description **case** | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleCase](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulecase)> | case block. **message** | string | Message for generated signals. **name** | string | The name of the rule. -**query** | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequery)> | query block. **connection**?🔹 | [SSHProvisionerConnection](#cdktf-sshprovisionerconnection) | [WinrmProvisionerConnection](#cdktf-winrmprovisionerconnection) | __*Optional*__ **count**?🔹 | number | __*Optional*__ **dependsOn**?🔹 | Array<[ITerraformDependable](#cdktf-iterraformdependable)> | __*Optional*__ @@ -162907,8 +164125,10 @@ Name | Type | Description **options**? | [securityMonitoringRule.SecurityMonitoringRuleOptions](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringruleoptions) | options block.
__*Optional*__ **provider**?🔹 | [TerraformProvider](#cdktf-terraformprovider) | __*Optional*__ **provisioners**?🔹 | Array<[FileProvisioner](#cdktf-fileprovisioner) | [LocalExecProvisioner](#cdktf-localexecprovisioner) | [RemoteExecProvisioner](#cdktf-remoteexecprovisioner)> | __*Optional*__ +**query**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequery)> | query block.
__*Optional*__ +**signalQuery**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleSignalQuery](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulesignalquery)> | signal_query block.
__*Optional*__ **tags**? | Array | Tags for generated signals.
__*Optional*__ -**type**? | string | The rule type. Valid values are `log_detection`, `infrastructure_configuration`, `workload_security`, `cloud_configuration`.
__*Optional*__ +**type**? | string | The rule type. Valid values are `log_detection`, `infrastructure_configuration`, `workload_security`, `cloud_configuration`, `signal_correlation`.
__*Optional*__ @@ -162985,11 +164205,11 @@ Name | Type | Description -----|------|------------- **query** | string | Query to run on logs. **agentRule**? | [IResolvable](#cdktf-iresolvable) | Array<[securityMonitoringRule.SecurityMonitoringRuleQueryAgentRule](#cdktf-provider-datadog-securitymonitoringrule-securitymonitoringrulequeryagentrule)> | agent_rule block.
__*Optional*__ -**aggregation**? | string | The aggregation type. Valid values are `count`, `cardinality`, `sum`, `max`, `new_value`, `geo_data`, `event_count`.
__*Optional*__ +**aggregation**? | string | The aggregation type.
__*Optional*__ **distinctFields**? | Array | Field for which the cardinality is measured. Sent as an array.
__*Optional*__ **groupByFields**? | Array | Fields to group by.
__*Optional*__ -**metric**? | string | The target field to aggregate over when using the `sum`, `max`, or `new_value` aggregations.
__*Optional*__ -**metrics**? | Array | Group of target fields to aggregate over when using the new value aggregations.
__*Optional*__ +**metric**? | string | The target field to aggregate over when using the `sum`, `max`, or `geo_data` aggregations.
__*Optional*__ +**metrics**? | Array | Group of target fields to aggregate over when using the `sum`, `max`, `geo_data`, or `new_value` aggregations.
__*Optional*__ **name**? | string | Name of the query. Not compatible with `new_value` aggregations.
__*Optional*__ @@ -163008,6 +164228,24 @@ Name | Type | Description +## struct SecurityMonitoringRuleSignalQuery + + + + + + +Name | Type | Description +-----|------|------------- +**ruleId** | string | Rule ID of the signal to correlate. +**aggregation**? | string | The aggregation type.
__*Optional*__ +**correlatedByFields**? | Array | Fields to correlate by.
__*Optional*__ +**correlatedQueryIndex**? | string | Index of the rule query used to retrieve the correlated field.
__*Optional*__ +**defaultRuleId**? | string | Default Rule ID of the signal to correlate. This value is READ-ONLY.
__*Optional*__ +**name**? | string | Name of the query. Not compatible with `new_value` aggregations.
__*Optional*__ + + + ## struct ServiceDefinitionYamlConfig @@ -163632,6 +164870,7 @@ Name | Type | Description **allowInsecure**? | boolean | [IResolvable](#cdktf-iresolvable) | Allows loading insecure content for an HTTP test.
__*Optional*__ **checkCertificateRevocation**? | boolean | [IResolvable](#cdktf-iresolvable) | For SSL test, whether or not the test should fail on revoked certificate in stapled OCSP.
__*Optional*__ **ci**? | [syntheticsTest.SyntheticsTestOptionsListCi](#cdktf-provider-datadog-syntheticstest-syntheticstestoptionslistci) | ci block.
__*Optional*__ +**disableCors**? | boolean | [IResolvable](#cdktf-iresolvable) | Disable Cross-Origin Resource Sharing for browser tests.
__*Optional*__ **disableCsp**? | boolean | [IResolvable](#cdktf-iresolvable) | Disable Content Security Policy for browser tests.
__*Optional*__ **followRedirects**? | boolean | [IResolvable](#cdktf-iresolvable) | Determines whether or not the API HTTP test should follow redirects.
__*Optional*__ **ignoreServerCertificateError**? | boolean | [IResolvable](#cdktf-iresolvable) | Ignore server certificate error.
__*Optional*__ diff --git a/package.json b/package.json index d924972ec..b4119fc66 100644 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "organization": true }, "devDependencies": { + "@actions/core": "^1.1.0", "@cdktf/provider-project": "^0.2.8", "@types/node": "^14", "cdktf": "^0.13.0", @@ -55,7 +56,7 @@ "jsii-pacmak": "^1.70.0", "node-fetch": "cjs", "npm-check-updates": "^16", - "projen": "^0.63.29", + "projen": "^0.64.1", "standard-version": "^9", "typescript": "^4.8.4" }, @@ -112,7 +113,7 @@ "cdktf": { "provider": { "name": "registry.terraform.io/datadog/datadog", - "version": "3.16.0" + "version": "3.17.0" } }, "resolutions": { diff --git a/scripts/check-for-upgrades.js b/scripts/check-for-upgrades.js index 7dbd1b1de..e1811fb16 100644 --- a/scripts/check-for-upgrades.js +++ b/scripts/check-for-upgrades.js @@ -1,6 +1,7 @@ const fetch = require("node-fetch"); const semver = require("semver"); +const actions = require("@actions/core"); // Code is inlined below, as this import requires us to add all dev dependencies of cdktf-cli as we're not // using the bundle. A better alternative would be to refactor this method to move to its own package, that @@ -25,7 +26,7 @@ const FQ_PROVIDER_NAME = "DataDog/datadog"; })(); function setGithubStepOutput(name, value) { - console.log(`::set-output name=${name}::"${value}"`) + actions.setOutput(name, value); } async function newerMatchingProviderVersionExists() { diff --git a/src/api-key/index.ts b/src/api-key/index.ts index 3e09a1dbc..9c470c94e 100644 --- a/src/api-key/index.ts +++ b/src/api-key/index.ts @@ -48,7 +48,7 @@ export class ApiKey extends cdktf.TerraformResource { terraformResourceType: 'datadog_api_key', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/application-key/index.ts b/src/application-key/index.ts index a9635770a..0da626e68 100644 --- a/src/application-key/index.ts +++ b/src/application-key/index.ts @@ -48,7 +48,7 @@ export class ApplicationKey extends cdktf.TerraformResource { terraformResourceType: 'datadog_application_key', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/authn-mapping/index.ts b/src/authn-mapping/index.ts index d9440e474..1e049876d 100644 --- a/src/authn-mapping/index.ts +++ b/src/authn-mapping/index.ts @@ -60,7 +60,7 @@ export class AuthnMapping extends cdktf.TerraformResource { terraformResourceType: 'datadog_authn_mapping', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/child-organization/index.ts b/src/child-organization/index.ts index bf88055cf..a8b48e648 100644 --- a/src/child-organization/index.ts +++ b/src/child-organization/index.ts @@ -639,7 +639,7 @@ export class ChildOrganization extends cdktf.TerraformResource { terraformResourceType: 'datadog_child_organization', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/cloud-workload-security-agent-rule/index.ts b/src/cloud-workload-security-agent-rule/index.ts index fcbfe66b4..f2625ec26 100644 --- a/src/cloud-workload-security-agent-rule/index.ts +++ b/src/cloud-workload-security-agent-rule/index.ts @@ -66,7 +66,7 @@ export class CloudWorkloadSecurityAgentRule extends cdktf.TerraformResource { terraformResourceType: 'datadog_cloud_workload_security_agent_rule', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/dashboard-json/index.ts b/src/dashboard-json/index.ts index a08ced727..07aa9cd6f 100644 --- a/src/dashboard-json/index.ts +++ b/src/dashboard-json/index.ts @@ -60,7 +60,7 @@ export class DashboardJson extends cdktf.TerraformResource { terraformResourceType: 'datadog_dashboard_json', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/dashboard-list/index.ts b/src/dashboard-list/index.ts index 1460272e7..0a20a8b05 100644 --- a/src/dashboard-list/index.ts +++ b/src/dashboard-list/index.ts @@ -176,7 +176,7 @@ export class DashboardList extends cdktf.TerraformResource { terraformResourceType: 'datadog_dashboard_list', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/dashboard/index-structs/structs0.ts b/src/dashboard/index-structs/structs0.ts index 8353d50ac..c111ec753 100644 --- a/src/dashboard/index-structs/structs0.ts +++ b/src/dashboard/index-structs/structs0.ts @@ -4447,6 +4447,12 @@ export interface DashboardWidgetChangeDefinitionRequestQueryEventQuery { */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -4475,6 +4481,7 @@ export function dashboardWidgetChangeDefinitionRequestQueryEventQueryToTerraform data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetChangeDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetChangeDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetChangeDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -4507,6 +4514,10 @@ export class DashboardWidgetChangeDefinitionRequestQueryEventQueryOutputReferenc hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -4528,6 +4539,7 @@ export class DashboardWidgetChangeDefinitionRequestQueryEventQueryOutputReferenc this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -4537,6 +4549,7 @@ export class DashboardWidgetChangeDefinitionRequestQueryEventQueryOutputReferenc this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -4585,6 +4598,22 @@ export class DashboardWidgetChangeDefinitionRequestQueryEventQueryOutputReferenc return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetChangeDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { @@ -15106,6 +15135,12 @@ export interface DashboardWidgetGeomapDefinitionRequestQueryEventQuery { */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -15134,6 +15169,7 @@ export function dashboardWidgetGeomapDefinitionRequestQueryEventQueryToTerraform data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetGeomapDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetGeomapDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetGeomapDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -15166,6 +15202,10 @@ export class DashboardWidgetGeomapDefinitionRequestQueryEventQueryOutputReferenc hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -15187,6 +15227,7 @@ export class DashboardWidgetGeomapDefinitionRequestQueryEventQueryOutputReferenc this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -15196,6 +15237,7 @@ export class DashboardWidgetGeomapDefinitionRequestQueryEventQueryOutputReferenc this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -15244,6 +15286,22 @@ export class DashboardWidgetGeomapDefinitionRequestQueryEventQueryOutputReferenc return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetGeomapDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { diff --git a/src/dashboard/index-structs/structs1200.ts b/src/dashboard/index-structs/structs1200.ts index e642aab63..a79130716 100644 --- a/src/dashboard/index-structs/structs1200.ts +++ b/src/dashboard/index-structs/structs1200.ts @@ -3861,6 +3861,12 @@ export interface DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionReques */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -3889,6 +3895,7 @@ export function dashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequest data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchToTerraform(struct!.search), @@ -3921,6 +3928,10 @@ export class DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestSca hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -3942,6 +3953,7 @@ export class DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestSca this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -3951,6 +3963,7 @@ export class DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestSca this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -3999,6 +4012,22 @@ export class DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestSca return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeList(this, "compute", false); public get compute() { @@ -12998,226 +13027,126 @@ export class DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputRefer return this._customLink.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink { - /** - * The flag for toggling context menu link visibility. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} - */ - readonly isHidden?: boolean | cdktf.IResolvable; - /** - * The label for the custom link URL. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; +export interface DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery { /** - * The URL of the custom link. + * Maximum number of results to display in the table. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly link?: string; + readonly limit?: number; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * Widget query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_string Dashboard#query_string} */ - readonly overrideLabel?: string; + readonly queryString: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + limit: cdktf.numberToTerraform(struct!.limit), + query_string: cdktf.stringToTerraform(struct!.queryString), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { - hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._link !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.limit = this._limit; } - if (this._overrideLabel !== undefined) { + if (this._queryString !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.queryString = this._queryString; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._limit = undefined; + this._queryString = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._limit = value.limit; + this._queryString = value.queryString; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); - } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; - } - public resetIsHidden() { - this._isHidden = undefined; - } - // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; - } - - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); - } - public set label(value: string) { - this._label = value; - } - public resetLabel() { - this._label = undefined; - } - // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; - } - - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set link(value: string) { - this._link = value; + public set limit(value: number) { + this._limit = value; } - public resetLink() { - this._link = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get limitInput() { + return this._limit; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); - } - public set overrideLabel(value: string) { - this._overrideLabel = value; + // query_string - computed: false, optional: false, required: true + private _queryString?: string; + public get queryString() { + return this.getStringAttribute('query_string'); } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public set queryString(value: string) { + this._queryString = value; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; - } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get queryStringInput() { + return this._queryString; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline { - /** - * Whether to hide the percentages of the groups. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_percent Dashboard#hide_percent} - */ - readonly hidePercent?: boolean | cdktf.IResolvable; +export interface DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest { /** - * Whether to hide the values of the groups. + * The request type for the SLO List request. Valid values are `slo_list`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request_type Dashboard#request_type} */ - readonly hideValue?: boolean | cdktf.IResolvable; + readonly requestType: string; /** - * The type of legend (inline or automatic). Valid values are `inline`, `automatic`. + * query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly type: string; + readonly query: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline): any { +export function dashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference | DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - hide_percent: cdktf.booleanToTerraform(struct!.hidePercent), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - type: cdktf.stringToTerraform(struct!.type), + request_type: cdktf.stringToTerraform(struct!.requestType), + query: dashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13228,182 +13157,100 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._hidePercent !== undefined) { - hasAnyValues = true; - internalValueResult.hidePercent = this._hidePercent; - } - if (this._hideValue !== undefined) { + if (this._requestType !== undefined) { hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; + internalValueResult.requestType = this._requestType; } - if (this._type !== undefined) { + if (this._query?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.type = this._type; + internalValueResult.query = this._query?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._hidePercent = undefined; - this._hideValue = undefined; - this._type = undefined; + this._requestType = undefined; + this._query.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._hidePercent = value.hidePercent; - this._hideValue = value.hideValue; - this._type = value.type; + this._requestType = value.requestType; + this._query.internalValue = value.query; } } - // hide_percent - computed: false, optional: true, required: false - private _hidePercent?: boolean | cdktf.IResolvable; - public get hidePercent() { - return this.getBooleanAttribute('hide_percent'); - } - public set hidePercent(value: boolean | cdktf.IResolvable) { - this._hidePercent = value; - } - public resetHidePercent() { - this._hidePercent = undefined; - } - // Temporarily expose input value. Use with caution. - public get hidePercentInput() { - return this._hidePercent; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); + // request_type - computed: false, optional: false, required: true + private _requestType?: string; + public get requestType() { + return this.getStringAttribute('request_type'); } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; - } - public resetHideValue() { - this._hideValue = undefined; + public set requestType(value: string) { + this._requestType = value; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get requestTypeInput() { + return this._requestType; } - // type - computed: false, optional: false, required: true - private _type?: string; - public get type() { - return this.getStringAttribute('type'); + // query - computed: false, optional: false, required: true + private _query = new DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQueryOutputReference(this, "query"); + public get query() { + return this._query; } - public set type(value: string) { - this._type = value; + public putQuery(value: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestQuery) { + this._query.internalValue = value; } // Temporarily expose input value. Use with caution. - public get typeInput() { - return this._type; + public get queryInput() { + return this._query.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable { +export interface DashboardWidgetGroupDefinitionWidgetSloListDefinition { /** - * The type of legend (table or none). Valid values are `table`, `none`. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly type: string; -} - -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - type: cdktf.stringToTerraform(struct!.type), - } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._type !== undefined) { - hasAnyValues = true; - internalValueResult.type = this._type; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._type = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._type = value.type; - } - } - - // type - computed: false, optional: false, required: true - private _type?: string; - public get type() { - return this.getStringAttribute('type'); - } - public set type(value: string) { - this._type = value; - } - // Temporarily expose input value. Use with caution. - public get typeInput() { - return this._type; - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery { + readonly title?: string; /** - * The aggregation method. + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly aggregation: string; + readonly titleAlign?: string; /** - * The facet name. + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly facet?: string; + readonly titleSize?: string; /** - * Define the time interval in seconds. + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly interval?: number; + readonly request: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSloListDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetSloListDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + request: dashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestToTerraform(struct!.request), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13414,361 +13261,479 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSloListDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.title = this._title; } - if (this._facet !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.titleAlign = this._titleAlign; } - if (this._interval !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.titleSize = this._titleSize; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSloListDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._request.internalValue = value.request; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set aggregation(value: string) { - this._aggregation = value; + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get titleInput() { + return this._title; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public set facet(value: string) { - this._facet = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetFacet() { - this._facet = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get titleAlignInput() { + return this._titleAlign; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public set interval(value: number) { - this._interval = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetInterval() { - this._interval = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get titleSizeInput() { + return this._titleSize; + } + + // request - computed: false, optional: false, required: true + private _request = new DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequestOutputReference(this, "request"); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetGroupDefinitionWidgetSloListDefinitionRequest) { + this._request.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink { /** - * The aggregation method. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly aggregation: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The facet name. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly facet?: string; + readonly label?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly order: string; + readonly link?: string; + /** + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + */ + readonly overrideLabel?: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.isHidden = this._isHidden; } - if (this._facet !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.label = this._label; } - if (this._order !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; } - else { + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set aggregation(value: string) { - this._aggregation = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get isHiddenInput() { + return this._isHidden; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set facet(value: string) { - this._facet = value; + public set label(value: string) { + this._label = value; } - public resetFacet() { - this._facet = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get labelInput() { + return this._label; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public set order(value: string) { - this._order = value; + public set link(value: string) { + this._link = value; + } + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get linkInput() { + return this._link; + } + + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); + } + public set overrideLabel(value: string) { + this._overrideLabel = value; + } + public resetOverrideLabel() { + this._overrideLabel = undefined; + } + // Temporarily expose input value. Use with caution. + public get overrideLabelInput() { + return this._overrideLabel; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable + /** - * The facet name. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline { + /** + * Whether to hide the percentages of the groups. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_percent Dashboard#hide_percent} */ - readonly facet?: string; + readonly hidePercent?: boolean | cdktf.IResolvable; /** - * The maximum number of items in the group. + * Whether to hide the values of the groups. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly limit?: number; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * sort_query block + * The type of legend (inline or automatic). Valid values are `inline`, `automatic`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery; + readonly type: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + hide_percent: cdktf.booleanToTerraform(struct!.hidePercent), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + type: cdktf.stringToTerraform(struct!.type), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._hidePercent !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.hidePercent = this._hidePercent; } - if (this._limit !== undefined) { + if (this._hideValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.hideValue = this._hideValue; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._type !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._hidePercent = undefined; + this._hideValue = undefined; + this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._hidePercent = value.hidePercent; + this._hideValue = value.hideValue; + this._type = value.type; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // hide_percent - computed: false, optional: true, required: false + private _hidePercent?: boolean | cdktf.IResolvable; + public get hidePercent() { + return this.getBooleanAttribute('hide_percent'); } - public set facet(value: string) { - this._facet = value; + public set hidePercent(value: boolean | cdktf.IResolvable) { + this._hidePercent = value; } - public resetFacet() { - this._facet = undefined; + public resetHidePercent() { + this._hidePercent = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get hidePercentInput() { + return this._hidePercent; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public set limit(value: number) { - this._limit = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } - public resetLimit() { - this._limit = undefined; + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get hideValueInput() { + return this._hideValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; - } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + // type - computed: false, optional: false, required: true + private _type?: string; + public get type() { + return this.getStringAttribute('type'); } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public set type(value: string) { + this._type = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get typeInput() { + return this._type; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The type of legend (table or none). Valid values are `table`, `none`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } + readonly type: string; +} + +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + type: cdktf.stringToTerraform(struct!.type), + } +} + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; /** - * @param index the index of the item to return + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._type !== undefined) { + hasAnyValues = true; + internalValueResult.type = this._type; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._type = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._type = value.type; + } + } + + // type - computed: false, optional: false, required: true + private _type?: string; + public get type() { + return this.getStringAttribute('type'); + } + public set type(value: string) { + this._type = value; + } + // Temporarily expose input value. Use with caution. + public get typeInput() { + return this._type; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery { /** * The aggregation method. * @@ -13789,7 +13754,7 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAp readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13801,24 +13766,18 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApm } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -13836,21 +13795,15 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQue return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -13902,74 +13855,40 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQue return this._interval; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13980,135 +13899,82 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetSearchQuery() { - this._searchQuery = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get aggregationInput() { + return this._aggregation; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get facetInput() { + return this._facet; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } - - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy { /** * The facet name. * @@ -14116,82 +13982,87 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAu */ readonly facet?: string; /** - * Define the time interval in seconds. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly interval?: number; + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } if (this._facet !== undefined) { hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; + this.resolvableValue = undefined; this._facet = undefined; - this._interval = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; + this.resolvableValue = undefined; this._facet = value.facet; - this._interval = value.interval; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - // facet - computed: false, optional: true, required: false private _facet?: string; public get facet() { @@ -14208,23 +14079,59 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQ return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute { /** * The aggregation method. * @@ -14238,14 +14145,14 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAu */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14253,22 +14160,28 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAud return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -14279,25 +14192,31 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQ hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; - this._order = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; - this._order = value.order; + this._interval = value.interval; } } @@ -14330,177 +14249,223 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQ return this._facet; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set order(value: string) { - this._order = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable + /** - * The facet name. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly facet?: string; + readonly index: string; /** - * The maximum number of items in the group. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly limit?: number; + readonly searchQuery?: string; /** - * sort_query block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery; -} - -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.index = this._index; } - if (this._limit !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.searchQuery = this._searchQuery; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetFacet() { - this._facet = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get indexInput() { + return this._index; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set limit(value: number) { - this._limit = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLimit() { - this._limit = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get searchQueryInput() { + return this._searchQuery; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery { /** * The aggregation method. * @@ -14521,7 +14486,7 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAu readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14533,24 +14498,18 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAud } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -14568,21 +14527,15 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQ return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -14634,74 +14587,40 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQ return this._interval; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery { /** - * The search query to use. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly searchQuery?: string; + readonly aggregation: string; /** - * compute_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery; + readonly facet?: string; /** - * group_by block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; - /** - * multi_compute block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} - */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14712,204 +14631,115 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQ super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; - /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy { /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly palette: string; + readonly facet?: string; /** - * Defines the displayed timeframe. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly timeframe?: string; + readonly limit?: number; /** - * A value for the comparator. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly value: number; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14923,222 +14753,99 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormul super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; + internalValueResult.facet = this._facet; } - if (this._customFgColor !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; + internalValueResult.limit = this._limit; } - if (this._hideValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._palette !== undefined) { - hasAnyValues = true; - internalValueResult.palette = this._palette; - } - if (this._timeframe !== undefined) { - hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; - } - if (this._value !== undefined) { - hasAnyValues = true; - internalValueResult.value = this._value; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); - } - public set customBgColor(value: string) { - this._customBgColor = value; - } - public resetCustomBgColor() { - this._customBgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; - } - - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); - } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); - } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; - } - public resetHideValue() { - this._hideValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; - } - - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set imageUrl(value: string) { - this._imageUrl = value; + public set facet(value: string) { + this._facet = value; } - public resetImageUrl() { - this._imageUrl = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get facetInput() { + return this._facet; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + public set limit(value: number) { + this._limit = value; } - public set palette(value: string) { - this._palette = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get limitInput() { + return this._limit; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; - } - public resetTimeframe() { - this._timeframe = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public set value(value: number) { - this._value = value; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -15152,474 +14859,693 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormul /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute { /** - * The number of results to return + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly count?: number; + readonly aggregation: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly order?: string; + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.aggregation = this._aggregation; } - if (this._order !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; - this._order = value.order; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set count(value: number) { - this._count = value; + public set aggregation(value: string) { + this._aggregation = value; } - public resetCount() { - this._count = undefined; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set order(value: string) { - this._order = value; + public set interval(value: number) { + this._interval = value; } - public resetOrder() { - this._order = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable + /** - * An expression alias. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly alias?: string; + readonly index: string; /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly cellDisplayMode?: string; + readonly searchQuery?: string; /** - * A string expression built from queries, formulas, and functions. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly formulaExpression: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery; /** - * conditional_formats block + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; /** - * limit block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly limit?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct!.limit), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.alias = this._alias; + internalValueResult.index = this._index; } - if (this._cellDisplayMode !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.searchQuery = this._searchQuery; } - if (this._formulaExpression !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._limit?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetAlias() { - this._alias = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get indexInput() { + return this._index; } - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get searchQueryInput() { + return this._searchQuery; } - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putLimit(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly comparator: string; /** - * @param index the index of the item to return + * The color palette to apply to the background, same values available as palette. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery { + readonly customBgColor?: string; /** - * The aggregation method. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly aggregation: string; + readonly customFgColor?: string; /** - * The facet name. + * Setting this to True hides values. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly facet?: string; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * Define the time interval in seconds. + * Displays an image as the background. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} */ - readonly interval?: number; + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.comparator = this._comparator; } - if (this._facet !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.customBgColor = this._customBgColor; } - if (this._interval !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get comparatorInput() { + return this._comparator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); } - public set facet(value: string) { - this._facet = value; + public set customBgColor(value: string) { + this._customBgColor = value; } - public resetFacet() { - this._facet = undefined; + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get customBgColorInput() { + return this._customBgColor; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set interval(value: number) { - this._interval = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - public resetInterval() { - this._interval = undefined; + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get customFgColorInput() { + return this._customFgColor; + } + + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); + } + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; + } + public resetHideValue() { + this._hideValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get hideValueInput() { + return this._hideValue; + } + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } + + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); + } + public set timeframe(value: string) { + this._timeframe = value; + } + public resetTimeframe() { + this._timeframe = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable + /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly aggregation: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The facet name. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit { + /** + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly facet?: string; + readonly count?: number; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The direction of the sort. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly order: string; + readonly order?: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), + count: cdktf.numberToTerraform(struct!.count), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15630,16 +15556,12 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.count = this._count; } if (this._order !== undefined) { hasAnyValues = true; @@ -15648,51 +15570,36 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; + this._count = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; + this._count = value.count; this._order = value.order; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set facet(value: string) { - this._facet = value; + public set count(value: number) { + this._count = value; } - public resetFacet() { - this._facet = undefined; + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get countInput() { + return this._count; } - // order - computed: false, optional: false, required: true + // order - computed: false, optional: true, required: false private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -15700,45 +15607,62 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue public set order(value: string) { this._order = value; } + public resetOrder() { + this._order = undefined; + } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula { /** - * The facet name. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly facet?: string; + readonly alias?: string; /** - * The maximum number of items in the group. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly limit?: number; + readonly cellDisplayMode?: string; /** - * sort_query block + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery; + readonly formulaExpression: string; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + /** + * limit block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -15752,34 +15676,44 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.alias = this._alias; } - if (this._limit !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.formulaExpression = this._formulaExpression; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._limit?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -15788,63 +15722,94 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set facet(value: string) { - this._facet = value; + public set alias(value: string) { + this._alias = value; } - public resetFacet() { - this._facet = undefined; + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get aliasInput() { + return this._alias; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set limit(value: number) { - this._limit = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetLimit() { - this._limit = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set formulaExpression(value: string) { + this._formulaExpression = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get formulaExpressionInput() { + return this._formulaExpression; + } + + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; + } + public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; + } + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; + } + + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; + } + public putLimit(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; + } + public resetLimit() { + this._limit.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -15858,11 +15823,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery { /** * The aggregation method. * @@ -15883,7 +15848,7 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLo readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15895,24 +15860,18 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLog } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -15930,21 +15889,15 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -15996,74 +15949,40 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue return this._interval; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16074,135 +15993,82 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set index(value: string) { - this._index = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery) { - this._computeQuery.internalValue = value; - } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy { /** * The facet name. * @@ -16210,82 +16076,87 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNe */ readonly facet?: string; /** - * Define the time interval in seconds. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly interval?: number; + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } if (this._facet !== undefined) { hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; + this.resolvableValue = undefined; this._facet = undefined; - this._interval = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; + this.resolvableValue = undefined; this._facet = value.facet; - this._interval = value.interval; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - // facet - computed: false, optional: true, required: false private _facet?: string; public get facet() { @@ -16302,23 +16173,59 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetwor return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute { /** * The aggregation method. * @@ -16332,14 +16239,14 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNe */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16347,22 +16254,28 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNet return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -16373,25 +16286,31 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetwor hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; - this._order = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; - this._order = value.order; + this._interval = value.interval; } } @@ -16424,177 +16343,223 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetwor return this._facet; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set order(value: string) { - this._order = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy { + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable + /** - * The facet name. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly facet?: string; + readonly index: string; /** - * The maximum number of items in the group. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly limit?: number; + readonly searchQuery?: string; /** - * sort_query block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.index = this._index; } - if (this._limit !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.searchQuery = this._searchQuery; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetFacet() { - this._facet = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get indexInput() { + return this._index; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set limit(value: number) { - this._limit = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLimit() { - this._limit = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get searchQueryInput() { + return this._searchQuery; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery { /** * The aggregation method. * @@ -16615,7 +16580,7 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNe readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16627,24 +16592,18 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNet } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -16662,21 +16621,15 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetwor return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -16728,74 +16681,40 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetwor return this._interval; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16806,232 +16725,184 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetwor super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy { /** - * A list of processes. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly filterBy?: string[]; + readonly facet?: string; /** - * The max number of items in the filter list. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * Your chosen metric. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * Your chosen search term. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly searchBy?: string; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; + internalValueResult.facet = this._facet; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._searchBy !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; + this.resolvableValue = undefined; + this._facet = undefined; this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; + this.resolvableValue = undefined; + this._facet = value.facet; this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this._sortQuery.internalValue = value.sortQuery; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set filterBy(value: string[]) { - this._filterBy = value; + public set facet(value: string) { + this._facet = value; } - public resetFilterBy() { - this._filterBy = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get facetInput() { + return this._facet; } // limit - computed: false, optional: true, required: false @@ -17050,425 +16921,244 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProces return this._limit; } - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set searchBy(value: string) { - this._searchBy = value; + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSearchBy() { - this._searchBy = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName: string; + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable + /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly primaryTagName?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * @param index the index of the item to return */ - readonly primaryTagValue?: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly stat: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.aggregation = this._aggregation; } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._stat !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); - } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; - } - public resetIsUpstream() { - this._isUpstream = undefined; - } - // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get aggregationInput() { + return this._aggregation; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set facet(value: string) { + this._facet = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get facetInput() { + return this._facet; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; - } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + public set interval(value: number) { + this._interval = value; } - public set resourceName(value: string) { - this._resourceName = value; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get intervalInput() { + return this._interval; } +} - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; - } +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; - } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Array of fields to group results by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: string[]; /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly name: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * @param index the index of the item to return */ - readonly operationName?: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery { /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly primaryTagName?: string; + readonly index: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly primaryTagValue?: string; + readonly searchQuery?: string; /** - * APM resource. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly resourceName?: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery; /** - * APM service. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly service: string; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly stat: string; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17479,345 +17169,251 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryA super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.index = this._index; } - if (this._env !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.env = this._env; + internalValueResult.searchQuery = this._searchQuery; } - if (this._groupBy !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._name !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._operationName !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { - hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; - } - if (this._service !== undefined) { - hasAnyValues = true; - internalValueResult.service = this._service; - } - if (this._stat !== undefined) { - hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); - } - public set groupBy(value: string[]) { - this._groupBy = value; - } - public resetGroupBy() { - this._groupBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetOperationName() { - this._operationName = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get indexInput() { + return this._index; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get searchQueryInput() { + return this._searchQuery; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set resourceName(value: string) { - this._resourceName = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetResourceName() { - this._resourceName = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get groupByInput() { + return this._groupBy.internalValue; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public set stat(value: string) { - this._stat = value; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly aggregation: string; + readonly filterBy?: string[]; /** - * A time interval in milliseconds. + * The max number of items in the filter list. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly interval?: number; + readonly limit?: number; /** - * The measurable attribute to compute. + * Your chosen metric. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric?: string; + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.filterBy = this._filterBy; } - if (this._interval !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.limit = this._limit; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; + this._filterBy = undefined; + this._limit = undefined; this._metric = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; + this._filterBy = value.filterBy; + this._limit = value.limit; this._metric = value.metric; + this._searchBy = value.searchBy; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set aggregation(value: string) { - this._aggregation = value; + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get filterByInput() { + return this._filterBy; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get limitInput() { + return this._limit; } - // metric - computed: false, optional: true, required: false + // metric - computed: false, optional: false, required: true private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -17825,68 +17421,110 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryE public set metric(value: string) { this._metric = value; } - public resetMetric() { - this._metric = undefined; - } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchByInput() { + return this._searchBy; + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * APM Environment. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort { + readonly env: string; /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly aggregation: string; + readonly isUpstream?: boolean | cdktf.IResolvable; /** - * The metric used for sorting group by results. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly metric?: string; + readonly name: string; /** - * Direction of sort. Valid values are `asc`, `desc`. + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly order?: string; + readonly operationName: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17897,357 +17535,721 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryE super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._metric !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.env = this._env; } - if (this._order !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._metric = undefined; - this._order = undefined; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._metric = value.metric; - this._order = value.order; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set aggregation(value: string) { - this._aggregation = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get dataSourceInput() { + return this._dataSource; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public set metric(value: string) { - this._metric = value; + public set env(value: string) { + this._env = value; } - public resetMetric() { - this._metric = undefined; + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); + } + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; + } + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get isUpstreamInput() { + return this._isUpstream; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set order(value: string) { - this._order = value; + public set name(value: string) { + this._name = value; } - public resetOrder() { - this._order = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get operationNameInput() { + return this._operationName; + } + + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } + + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery { /** - * The event facet. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet: string; + readonly dataSource: string; /** - * The number of groups to return. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly limit?: number; + readonly env: string; /** - * sort block + * Array of fields to group results by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly sort?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort; + readonly groupBy?: string[]; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Name of operation on service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + */ + readonly operationName?: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._sort?.internalValue !== undefined) { + if (this._groupBy !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.groupBy = this._groupBy; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sort.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._groupBy = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sort.internalValue = value.sort; + this._dataSource = value.dataSource; + this._env = value.env; + this._groupBy = value.groupBy; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public set limit(value: number) { - this._limit = value; + public set env(value: string) { + this._env = value; } - public resetLimit() { - this._limit = undefined; + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get groupByInput() { + return this._groupBy; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putSort(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetSort() { - this._sort.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get operationNameInput() { + return this._operationName; } -} -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute { /** - * The events search string. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * A time interval in milliseconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; + /** + * The measurable attribute to compute. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly query: string; + readonly metric?: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._query !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.aggregation = this._aggregation; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; + this._metric = value.metric; } } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set query(value: string) { - this._query = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get aggregationInput() { + return this._aggregation; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery { - /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + /** - * An array of index names to query in the stream. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly indexes?: string[]; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param index the index of the item to return */ - readonly name: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort { /** - * compute block + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly compute: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly aggregation: string; /** - * group_by block + * The metric used for sorting group by results. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly metric?: string; /** - * search block + * Direction of sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly search?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch; + readonly order?: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), - name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + metric: cdktf.stringToTerraform(struct!.metric), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18258,277 +18260,287 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryE super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._indexes !== undefined) { - hasAnyValues = true; - internalValueResult.indexes = this._indexes; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._compute?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.metric = this._metric; } - if (this._search?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._indexes = undefined; - this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._aggregation = undefined; + this._metric = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._indexes = value.indexes; - this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._aggregation = value.aggregation; + this._metric = value.metric; + this._order = value.order; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); - } - public set indexes(value: string[]) { - this._indexes = value; - } - public resetIndexes() { - this._indexes = undefined; - } - // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public putCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set metric(value: string) { + this._metric = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get metricInput() { + return this._metric; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public putSearch(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public set order(value: string) { + this._order = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy { /** - * The data source for metrics queries. + * The event facet. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly dataSource?: string; + readonly facet: string; /** - * The name of the query for use in formulas. + * The number of groups to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly name: string; + readonly limit?: number; /** - * The metrics query definition. + * sort block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly query: string; + readonly sort?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.facet = this._facet; } - if (this._name !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.limit = this._limit; } - if (this._query !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetAggregator() { - this._aggregator = undefined; + public set facet(value: string) { + this._facet = value; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get facetInput() { + return this._facet; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set dataSource(value: string) { - this._dataSource = value; + public set limit(value: number) { + this._limit = value; } - public resetDataSource() { - this._dataSource = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get limitInput() { + return this._limit; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public set name(value: string) { - this._name = value; + public putSort(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; + } + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get sortInput() { + return this._sort.internalValue; + } +} + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch { + /** + * The events search string. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; +} + +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + query: cdktf.stringToTerraform(struct!.query), + } +} + +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._query = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._query = value.query; + } } // query - computed: false, optional: false, required: true @@ -18544,37 +18556,19 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryM return this._query; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery { /** - * The data source for process queries. Valid values are `process`, `container`. + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ readonly dataSource: string; /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} - */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; - /** - * The number of hits to return. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * The process metric name. + * An array of index names to query in the stream. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - readonly metric: string; + readonly indexes?: string[]; /** * The name of query for use in formulas. * @@ -18582,44 +18576,48 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQu */ readonly name: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * Storage location (private beta). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} */ - readonly sort?: string; + readonly storage?: string; /** - * An array of tags to filter by. + * compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} */ - readonly tagFilters?: string[]; + readonly compute: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; /** - * The text to use as a filter. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly textFilter?: string; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18630,91 +18628,63 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryP super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.indexes = this._indexes; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._sort !== undefined) { + if (this._storage !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort; + internalValueResult.storage = this._storage; } - if (this._tagFilters !== undefined) { + if (this._compute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; + internalValueResult.compute = this._compute?.internalValue; } - if (this._textFilter !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; - this._metric = undefined; + this._indexes = undefined; this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; - this._metric = value.metric; + this._indexes = value.indexes; this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - // data_source - computed: false, optional: false, required: true private _dataSource?: string; public get dataSource() { @@ -18728,49 +18698,20 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryP return this._dataSource; } - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; - } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; - } - // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + public set indexes(value: string[]) { + this._indexes = value; } - public set metric(value: string) { - this._metric = value; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get indexesInput() { + return this._indexes; } // name - computed: false, optional: false, required: true @@ -18786,303 +18727,291 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryP return this._name; } - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); } - public set sort(value: string) { - this._sort = value; + public set storage(value: string) { + this._storage = value; } - public resetSort() { - this._sort = undefined; + public resetStorage() { + this._storage = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; + public get storageInput() { + return this._storage; } - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; } - public set tagFilters(value: string[]) { - this._tagFilters = value; + public putCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; } - public resetTagFilters() { - this._tagFilters = undefined; + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; + public get groupByInput() { + return this._groupBy.internalValue; } - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; } - public set textFilter(value: string) { - this._textFilter = value; + public putSearch(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; } - public resetTextFilter() { - this._textFilter = undefined; + public resetSearch() { + this._search.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + public get searchInput() { + return this._search.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery { /** - * apm_resource_stats_query block + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery; + readonly aggregator?: string; /** - * event_query block + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery; + readonly dataSource?: string; /** - * metric_query block + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery; + readonly name: string; /** - * process_query block + * The metrics query definition. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery; + readonly query: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; + internalValueResult.aggregator = this._aggregator; } - if (this._eventQuery?.internalValue !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.dataSource = this._dataSource; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.name = this._name; } - if (this._processQuery?.internalValue !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; - } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; - } - - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; + public get aggregatorInput() { + return this._aggregator; } - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get dataSourceInput() { + return this._dataSource; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; - } - public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get nameInput() { + return this._name; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get queryInput() { + return this._query; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly aggregator?: string; /** - * @param index the index of the item to return + * The data source for process queries. Valid values are `process`, `container`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery { + readonly dataSource: string; /** - * The aggregation method. + * Whether to normalize the CPU percentages. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} */ - readonly aggregation: string; + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; /** - * The facet name. + * The number of hits to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * The process metric name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The direction of the sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: string; + /** + * An array of tags to filter by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} */ - readonly facet?: string; + readonly tagFilters?: string[]; /** - * Define the time interval in seconds. + * The text to use as a filter. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} */ - readonly interval?: number; + readonly textFilter?: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19093,237 +19022,258 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._interval !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetFacet() { - this._facet = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); } - public set interval(value: number) { - this._interval = value; + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; } - public resetInterval() { - this._interval = undefined; + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + public set limit(value: number) { + this._limit = value; } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); + } + public set sort(value: string) { + this._sort = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetSort() { + this._sort = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get sortInput() { + return this._sort; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); } - public set facet(value: string) { - this._facet = value; + public set tagFilters(value: string[]) { + this._tagFilters = value; } - public resetFacet() { - this._facet = undefined; + public resetTagFilters() { + this._tagFilters = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get tagFiltersInput() { + return this._tagFilters; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); } - public set order(value: string) { - this._order = value; + public set textFilter(value: string) { + this._textFilter = value; + } + public resetTextFilter() { + this._textFilter = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery { /** - * The facet name. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly facet?: string; + readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery; /** - * The maximum number of items in the group. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly limit?: number; + readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery; /** - * sort_query block + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + */ + readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery; + /** + * metric_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + */ + readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery; + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -19337,34 +19287,44 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._limit !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.eventQuery = this._eventQuery?.internalValue; + } + if (this._metricQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.metricQuery = this._metricQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -19373,63 +19333,97 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set facet(value: string) { - this._facet = value; + public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public set limit(value: number) { - this._limit = value; + public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get eventQueryInput() { + return this._eventQuery.internalValue; + } + + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; + } + public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; + } + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricQueryInput() { + return this._metricQuery.internalValue; + } + + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19443,11 +19437,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery { /** * The aggregation method. * @@ -19468,7 +19462,7 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRu readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19480,24 +19474,18 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRum } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -19515,21 +19503,15 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -19581,23 +19563,3 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue return this._interval; } } - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} diff --git a/src/dashboard/index-structs/structs1600.ts b/src/dashboard/index-structs/structs1600.ts index c92b6ead1..82b23eccd 100644 --- a/src/dashboard/index-structs/structs1600.ts +++ b/src/dashboard/index-structs/structs1600.ts @@ -2,12 +2,6 @@ import * as cdktf from 'cdktf'; import { DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery, dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform, DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference, -DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy, -dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform, -DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByList, -DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute, -dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform, -DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeList, DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery, dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryToTerraform, DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference, @@ -38,54 +32,40 @@ DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReferenc DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable, dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableToTerraform, DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference } from './structs1200' -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -96,135 +76,82 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy { /** * The facet name. * @@ -232,82 +159,87 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSe */ readonly facet?: string; /** - * Define the time interval in seconds. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly interval?: number; + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } if (this._facet !== undefined) { hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; + this.resolvableValue = undefined; this._facet = undefined; - this._interval = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; + this.resolvableValue = undefined; this._facet = value.facet; - this._interval = value.interval; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - // facet - computed: false, optional: true, required: false private _facet?: string; public get facet() { @@ -324,256 +256,16 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} - -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; - } -} -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery; -} - -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), - } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. public get limitInput() { @@ -581,11 +273,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -597,8 +289,8 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -612,11 +304,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute { /** * The aggregation method. * @@ -637,7 +329,7 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSe readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -649,7 +341,7 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSec } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -663,7 +355,7 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -684,7 +376,7 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -751,8 +443,8 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -766,11 +458,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery { /** * The name of the index to query. * @@ -788,22 +480,22 @@ export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSe * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -811,13 +503,13 @@ export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSec return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -828,7 +520,7 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -854,7 +546,7 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -903,11 +595,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -919,11 +611,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -935,11 +627,11 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -950,442 +642,162 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecuri return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest { - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery; - /** - * audit_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} - */ - readonly auditQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery; - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery; - /** - * network_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} - */ - readonly networkQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery { /** - * query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly query?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable; + readonly aggregation: string; /** - * rum_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly rumQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery; + readonly facet?: string; /** - * security_query block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly securityQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - audit_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), - formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryToTerraform(struct!.logQuery), - network_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), - process_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._auditQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.auditQuery = this._auditQuery?.internalValue; - } - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._networkQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.networkQuery = this._networkQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._query?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._auditQuery.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._networkQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._auditQuery.internalValue = value.auditQuery; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._networkQuery.internalValue = value.networkQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetQ() { - this._q = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; + public get aggregationInput() { + return this._aggregation; } - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putApmQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; + public get facetInput() { + return this._facet; } - // audit_query - computed: false, optional: true, required: false - private _auditQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryOutputReference(this, "audit_query"); - public get auditQuery() { - return this._auditQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putAuditQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery) { - this._auditQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetAuditQuery() { - this._auditQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get auditQueryInput() { - return this._auditQuery.internalValue; - } - - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; - } - public resetFormula() { - this._formula.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; - } - public resetLogQuery() { - this._logQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // network_query - computed: false, optional: true, required: false - private _networkQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryOutputReference(this, "network_query"); - public get networkQuery() { - return this._networkQuery; - } - public putNetworkQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery) { - this._networkQuery.internalValue = value; - } - public resetNetworkQuery() { - this._networkQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get networkQueryInput() { - return this._networkQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; - } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; - } - - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; - } - public putQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; - } - public resetQuery() { - this._query.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; - } - - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; - } - public putRumQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; - } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; - } - - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; - } - public putSecurityQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; - } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; - } -} - -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestOutputReference { - return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinition { - /** - * Whether or not to show the total value in the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_total Dashboard#hide_total} - */ - readonly hideTotal?: boolean | cdktf.IResolvable; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; - /** - * The size of the widget's title. Default is 16. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} - */ - readonly titleSize?: string; - /** - * custom_link block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} - */ - readonly customLink?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery { /** - * legend_inline block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_inline Dashboard#legend_inline} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly legendInline?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline; + readonly aggregation: string; /** - * legend_table block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_table Dashboard#legend_table} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly legendTable?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable; + readonly facet?: string; /** - * request block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly request?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinition): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - hide_total: cdktf.booleanToTerraform(struct!.hideTotal), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkToTerraform, true)(struct!.customLink), - legend_inline: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineToTerraform(struct!.legendInline), - legend_table: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableToTerraform(struct!.legendTable), - request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestToTerraform, true)(struct!.request), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1396,260 +808,115 @@ export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReferen super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinition | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._hideTotal !== undefined) { - hasAnyValues = true; - internalValueResult.hideTotal = this._hideTotal; - } - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; - } - if (this._legendInline?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.legendInline = this._legendInline?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._legendTable?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.legendTable = this._legendTable?.internalValue; + internalValueResult.facet = this._facet; } - if (this._request?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinition | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._hideTotal = undefined; - this._liveSpan = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._legendInline.internalValue = undefined; - this._legendTable.internalValue = undefined; - this._request.internalValue = undefined; - } - else { + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { this.isEmptyObject = Object.keys(value).length === 0; - this._hideTotal = value.hideTotal; - this._liveSpan = value.liveSpan; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._legendInline.internalValue = value.legendInline; - this._legendTable.internalValue = value.legendTable; - this._request.internalValue = value.request; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // hide_total - computed: false, optional: true, required: false - private _hideTotal?: boolean | cdktf.IResolvable; - public get hideTotal() { - return this.getBooleanAttribute('hide_total'); - } - public set hideTotal(value: boolean | cdktf.IResolvable) { - this._hideTotal = value; - } - public resetHideTotal() { - this._hideTotal = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideTotalInput() { - return this._hideTotal; - } - - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; - } - public resetLiveSpan() { - this._liveSpan = undefined; - } - // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; - } - - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; - } - - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); - } - public set titleAlign(value: string) { - this._titleAlign = value; - } - public resetTitleAlign() { - this._titleAlign = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; - } - - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; - } - public resetTitleSize() { - this._titleSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; - } - - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; - } - public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; - } - public resetCustomLink() { - this._customLink.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; - } - - // legend_inline - computed: false, optional: true, required: false - private _legendInline = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference(this, "legend_inline"); - public get legendInline() { - return this._legendInline; - } - public putLegendInline(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline) { - this._legendInline.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLegendInline() { - this._legendInline.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get legendInlineInput() { - return this._legendInline.internalValue; + public get aggregationInput() { + return this._aggregation; } - // legend_table - computed: false, optional: true, required: false - private _legendTable = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference(this, "legend_table"); - public get legendTable() { - return this._legendTable; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putLegendTable(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable) { - this._legendTable.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetLegendTable() { - this._legendTable.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get legendTableInput() { - return this._legendTable.internalValue; + public get facetInput() { + return this._facet; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestList(this, "request", false); - public get request() { - return this._request; - } - public putRequest(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetRequest() { - this._request.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink { - /** - * The flag for toggling context menu link visibility. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} - */ - readonly isHidden?: boolean | cdktf.IResolvable; +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy { /** - * The label for the custom link URL. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly label?: string; + readonly facet?: string; /** - * The URL of the custom link. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly link?: string; + readonly limit?: number; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly overrideLabel?: string; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -1663,39 +930,34 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkO super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { - hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; - } - if (this._label !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.facet = this._facet; } - if (this._link !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.limit = this._limit; } - if (this._overrideLabel !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -1704,80 +966,63 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkO else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + public set facet(value: string) { + this._facet = value; } - public resetIsHidden() { - this._isHidden = undefined; - } - // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; - } - - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); - } - public set label(value: string) { - this._label = value; - } - public resetLabel() { - this._label = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get facetInput() { + return this._facet; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set link(value: string) { - this._link = value; + public set limit(value: number) { + this._limit = value; } - public resetLink() { - this._link = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get limitInput() { + return this._limit; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -1791,37 +1036,44 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkL /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute { /** - * The event query to use in the widget. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly q: string; + readonly aggregation: string; /** - * The execution method for multi-value filters. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tags_execution Dashboard#tags_execution} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly tagsExecution?: string; + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - tags_execution: cdktf.stringToTerraform(struct!.tagsExecution), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -1835,29 +1087,34 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutput super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.q = this._q; + internalValueResult.aggregation = this._aggregation; } - if (this._tagsExecution !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.tagsExecution = this._tagsExecution; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._q = undefined; - this._tagsExecution = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -1866,43 +1123,60 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutput else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._q = value.q; - this._tagsExecution = value.tagsExecution; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // q - computed: false, optional: false, required: true - private _q?: string; - public get q() { - return this.getStringAttribute('q'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set q(value: string) { - this._q = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; + public get aggregationInput() { + return this._aggregation; } - // tags_execution - computed: false, optional: true, required: false - private _tagsExecution?: string; - public get tagsExecution() { - return this.getStringAttribute('tags_execution'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set tagsExecution(value: string) { - this._tagsExecution = value; + public set facet(value: string) { + this._facet = value; } - public resetTagsExecution() { - this._tagsExecution = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get tagsExecutionInput() { - return this._tagsExecution; + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -1916,545 +1190,533 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventList e /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery { /** - * How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly displayType?: string; + readonly index: string; /** - * A label for the line or range. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly label?: string; + readonly searchQuery?: string; /** - * A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly value: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - display_type: cdktf.stringToTerraform(struct!.displayType), - label: cdktf.stringToTerraform(struct!.label), - value: cdktf.stringToTerraform(struct!.value), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._displayType !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.displayType = this._displayType; + internalValueResult.index = this._index; } - if (this._label !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.searchQuery = this._searchQuery; } - if (this._value !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._displayType = undefined; - this._label = undefined; - this._value = undefined; + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; } - else if (cdktf.Tokenization.isResolvable(value)) { + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery | undefined) { + if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._displayType = value.displayType; - this._label = value.label; - this._value = value.value; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // display_type - computed: false, optional: true, required: false - private _displayType?: string; - public get displayType() { - return this.getStringAttribute('display_type'); - } - public set displayType(value: string) { - this._displayType = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetDisplayType() { - this._displayType = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get displayTypeInput() { - return this._displayType; + public get indexInput() { + return this._index; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set label(value: string) { - this._label = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLabel() { - this._label = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get searchQueryInput() { + return this._searchQuery; } - // value - computed: false, optional: false, required: true - private _value?: string; - public get value() { - return this.getStringAttribute('value'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set value(value: string) { - this._value = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get computeQueryInput() { + return this._computeQuery.internalValue; } -} -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; + } +} +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The metric query to use for this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly q?: string; /** - * @param index the index of the item to return + * apm_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery { + readonly apmQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery; /** - * The aggregation method. + * audit_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} */ - readonly aggregation: string; + readonly auditQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery; /** - * The facet name. + * formula block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} */ - readonly facet?: string; + readonly formula?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable; /** - * Define the time interval in seconds. + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly interval?: number; + readonly logQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery; + /** + * network_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} + */ + readonly networkQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery; + /** + * security_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + */ + readonly securityQuery?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + audit_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), + formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryToTerraform(struct!.logQuery), + network_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), + process_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.q = this._q; } - if (this._facet !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._interval !== undefined) { + if (this._auditQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + internalValueResult.auditQuery = this._auditQuery?.internalValue; } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + if (this._formula?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.formula = this._formula?.internalValue; } + if (this._logQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._networkQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.networkQuery = this._networkQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._auditQuery.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._networkQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._auditQuery.internalValue = value.auditQuery; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._networkQuery.internalValue = value.networkQuery; + this._processQuery.internalValue = value.processQuery; + this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; + } } - public set aggregation(value: string) { - this._aggregation = value; + + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); + } + public set q(value: string) { + this._q = value; + } + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get qInput() { + return this._q; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set facet(value: string) { - this._facet = value; + public putApmQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // audit_query - computed: false, optional: true, required: false + private _auditQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQueryOutputReference(this, "audit_query"); + public get auditQuery() { + return this._auditQuery; } - public set interval(value: number) { - this._interval = value; + public putAuditQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestAuditQuery) { + this._auditQuery.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetAuditQuery() { + this._auditQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get auditQueryInput() { + return this._auditQuery.internalValue; } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + public putFormula(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; } -} - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public resetFormula() { + this._formula.internalValue = undefined; } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get formulaInput() { + return this._formula.internalValue; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + public putLogQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetLogQuery() { + this._logQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get logQueryInput() { + return this._logQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // network_query - computed: false, optional: true, required: false + private _networkQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQueryOutputReference(this, "network_query"); + public get networkQuery() { + return this._networkQuery; } - public set facet(value: string) { - this._facet = value; + public putNetworkQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestNetworkQuery) { + this._networkQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetNetworkQuery() { + this._networkQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get networkQueryInput() { + return this._networkQuery.internalValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public set order(value: string) { - this._order = value; + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery; -} - -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), - } -} - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public set facet(value: string) { - this._facet = value; + public putQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get queryInput() { + return this._query.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public set limit(value: number) { - this._limit = value; + public putRumQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putSecurityQuery(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get securityQueryInput() { + return this._securityQuery.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -2468,467 +1730,775 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQ /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestOutputReference { + return new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetSunburstDefinition { /** - * The aggregation method. + * Whether or not to show the total value in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_total Dashboard#hide_total} */ - readonly aggregation: string; + readonly hideTotal?: boolean | cdktf.IResolvable; /** - * The facet name. + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - readonly facet?: string; + readonly liveSpan?: string; /** - * Define the time interval in seconds. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly interval?: number; + readonly title?: string; + /** + * The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; + /** + * The size of the widget's title. Default is 16. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable; + /** + * legend_inline block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_inline Dashboard#legend_inline} + */ + readonly legendInline?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline; + /** + * legend_table block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_table Dashboard#legend_table} + */ + readonly legendTable?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetSunburstDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetSunburstDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + hide_total: cdktf.booleanToTerraform(struct!.hideTotal), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkToTerraform, true)(struct!.customLink), + legend_inline: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineToTerraform(struct!.legendInline), + legend_table: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableToTerraform(struct!.legendTable), + request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetSunburstDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._hideTotal !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.hideTotal = this._hideTotal; } - if (this._facet !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.liveSpan = this._liveSpan; } - if (this._interval !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.title = this._title; } - return hasAnyValues ? internalValueResult : undefined; + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._legendInline?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.legendInline = this._legendInline?.internalValue; + } + if (this._legendTable?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.legendTable = this._legendTable?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._hideTotal = undefined; + this._liveSpan = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._legendInline.internalValue = undefined; + this._legendTable.internalValue = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._hideTotal = value.hideTotal; + this._liveSpan = value.liveSpan; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._legendInline.internalValue = value.legendInline; + this._legendTable.internalValue = value.legendTable; + this._request.internalValue = value.request; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // hide_total - computed: false, optional: true, required: false + private _hideTotal?: boolean | cdktf.IResolvable; + public get hideTotal() { + return this.getBooleanAttribute('hide_total'); } - public set aggregation(value: string) { - this._aggregation = value; + public set hideTotal(value: boolean | cdktf.IResolvable) { + this._hideTotal = value; + } + public resetHideTotal() { + this._hideTotal = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get hideTotalInput() { + return this._hideTotal; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); } - public set facet(value: string) { - this._facet = value; + public set liveSpan(value: string) { + this._liveSpan = value; } - public resetFacet() { - this._facet = undefined; + public resetLiveSpan() { + this._liveSpan = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get liveSpanInput() { + return this._liveSpan; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set interval(value: number) { - this._interval = value; + public set title(value: string) { + this._title = value; } - public resetInterval() { - this._interval = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get titleInput() { + return this._title; } -} -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; + } + + // legend_inline - computed: false, optional: true, required: false + private _legendInline = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInlineOutputReference(this, "legend_inline"); + public get legendInline() { + return this._legendInline; + } + public putLegendInline(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendInline) { + this._legendInline.internalValue = value; + } + public resetLegendInline() { + this._legendInline.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendInlineInput() { + return this._legendInline.internalValue; + } + + // legend_table - computed: false, optional: true, required: false + private _legendTable = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTableOutputReference(this, "legend_table"); + public get legendTable() { + return this._legendTable; + } + public putLegendTable(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionLegendTable) { + this._legendTable.internalValue = value; + } + public resetLegendTable() { + this._legendTable.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendTableInput() { + return this._legendTable.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequestList(this, "request", false); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink { /** - * The search query to use. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly searchQuery?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * compute_query block + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery; + readonly label?: string; /** - * group_by block + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly link?: string; /** - * multi_compute block + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly overrideLabel?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.isHidden = this._isHidden; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.label = this._label; } - if (this._groupBy?.internalValue !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.link = this._link; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._overrideLabel !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get isHiddenInput() { + return this._isHidden; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set label(value: string) { + this._label = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get labelInput() { + return this._label; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set link(value: string) { + this._link = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get linkInput() { + return this._link; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get overrideLabelInput() { + return this._overrideLabel; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery { + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable + /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly aggregation: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The facet name. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent { + /** + * The event query to use in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly facet?: string; + readonly q: string; /** - * Define the time interval in seconds. + * The execution method for multi-value filters. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tags_execution Dashboard#tags_execution} */ - readonly interval?: number; + readonly tagsExecution?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + q: cdktf.stringToTerraform(struct!.q), + tags_execution: cdktf.stringToTerraform(struct!.tagsExecution), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.q = this._q; } - if (this._interval !== undefined) { + if (this._tagsExecution !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.tagsExecution = this._tagsExecution; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._q = undefined; + this._tagsExecution = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._q = value.q; + this._tagsExecution = value.tagsExecution; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; + // q - computed: false, optional: false, required: true + private _q?: string; + public get q() { + return this.getStringAttribute('q'); + } + public set q(value: string) { + this._q = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get qInput() { + return this._q; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // tags_execution - computed: false, optional: true, required: false + private _tagsExecution?: string; + public get tagsExecution() { + return this.getStringAttribute('tags_execution'); } - public set facet(value: string) { - this._facet = value; + public set tagsExecution(value: string) { + this._tagsExecution = value; } - public resetFacet() { - this._facet = undefined; + public resetTagsExecution() { + this._tagsExecution = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get tagsExecutionInput() { + return this._tagsExecution; } +} - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - public set interval(value: number) { - this._interval = value; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } - public resetInterval() { - this._interval = undefined; +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker { + /** + * How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} + */ + readonly displayType?: string; + /** + * A label for the line or range. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + */ + readonly label?: string; + /** + * A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: string; +} + +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + display_type: cdktf.stringToTerraform(struct!.displayType), + label: cdktf.stringToTerraform(struct!.label), + value: cdktf.stringToTerraform(struct!.value), + } +} + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._displayType !== undefined) { + hasAnyValues = true; + internalValueResult.displayType = this._displayType; + } + if (this._label !== undefined) { + hasAnyValues = true; + internalValueResult.label = this._label; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._displayType = undefined; + this._label = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._displayType = value.displayType; + this._label = value.label; + this._value = value.value; + } + } + + // display_type - computed: false, optional: true, required: false + private _displayType?: string; + public get displayType() { + return this.getStringAttribute('display_type'); + } + public set displayType(value: string) { + this._displayType = value; + } + public resetDisplayType() { + this._displayType = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get displayTypeInput() { + return this._displayType; + } + + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); + } + public set label(value: string) { + this._label = value; + } + public resetLabel() { + this._label = undefined; + } + // Temporarily expose input value. Use with caution. + public get labelInput() { + return this._label; + } + + // value - computed: false, optional: false, required: true + private _value?: string; + public get value() { + return this.getStringAttribute('value'); + } + public set value(value: string) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery { + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery { /** * The aggregation method. * @@ -2942,14 +2512,14 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -2957,11 +2527,11 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestA return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -2972,7 +2542,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -2983,25 +2553,25 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; this._facet = undefined; - this._order = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; this._facet = value.facet; - this._order = value.order; + this._interval = value.interval; } } @@ -3034,20 +2604,142 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi return this._facet; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set order(value: string) { - this._order = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} + +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy { /** * The facet name. * @@ -3065,10 +2757,10 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3076,11 +2768,11 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestA return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -3094,7 +2786,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -3115,7 +2807,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -3169,11 +2861,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -3185,8 +2877,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -3200,11 +2892,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute { /** * The aggregation method. * @@ -3225,7 +2917,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3237,7 +2929,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestA } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -3251,7 +2943,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -3272,7 +2964,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -3339,8 +3031,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -3354,11 +3046,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery { /** * The name of the index to query. * @@ -3376,22 +3068,22 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3399,13 +3091,13 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestA return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3416,7 +3108,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -3442,7 +3134,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -3491,11 +3183,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -3507,11 +3199,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -3523,11 +3215,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -3538,472 +3230,438 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAudi return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; - /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery { /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly palette: string; + readonly aggregation: string; /** - * Defines the displayed timeframe. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly timeframe?: string; + readonly facet?: string; /** - * A value for the comparator. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly value: number; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._palette !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.aggregation = this._aggregation; } - if (this._timeframe !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.facet = this._facet; } - if (this._value !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set comparator(value: string) { - this._comparator = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; + public get aggregationInput() { + return this._aggregation; } - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set customBgColor(value: string) { - this._customBgColor = value; + public set facet(value: string) { + this._facet = value; } - public resetCustomBgColor() { - this._customBgColor = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; + public get facetInput() { + return this._facet; } - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set customFgColor(value: string) { - this._customFgColor = value; + public set interval(value: number) { + this._interval = value; } - public resetCustomFgColor() { - this._customFgColor = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; + public get intervalInput() { + return this._interval; } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } - public resetHideValue() { - this._hideValue = undefined; +} + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; } - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } } - public set imageUrl(value: string) { - this._imageUrl = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetImageUrl() { - this._imageUrl = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get aggregationInput() { + return this._aggregation; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); - } - public set palette(value: string) { - this._palette = value; - } - // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; - } - - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; + public set facet(value: string) { + this._facet = value; } - public resetTimeframe() { - this._timeframe = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + public get facetInput() { + return this._facet; } - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set value(value: number) { - this._value = value; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get orderInput() { + return this._order; } } - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy { /** - * @param index the index of the item to return + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit { + readonly facet?: string; /** - * The number of results to return + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly count?: number; + readonly limit?: number; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly order?: string; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; - this._order = value.order; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set count(value: number) { - this._count = value; + public set facet(value: string) { + this._facet = value; } - public resetCount() { - this._count = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set order(value: string) { - this._order = value; + public set limit(value: number) { + this._limit = value; } - public resetOrder() { - this._order = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula { + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable + /** - * An expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly alias?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * @param index the index of the item to return */ - readonly cellDisplayMode?: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute { /** - * A string expression built from queries, formulas, and functions. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly formulaExpression: string; + readonly aggregation: string; /** - * conditional_formats block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly facet?: string; /** - * limit block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly limit?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct!.limit), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -4017,44 +3675,34 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestForm super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { - hasAnyValues = true; - internalValueResult.alias = this._alias; - } - if (this._cellDisplayMode !== undefined) { - hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; - } - if (this._formulaExpression !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.aggregation = this._aggregation; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.facet = this._facet; } - if (this._limit?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -4063,94 +3711,60 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestForm else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; - } - public resetAlias() { - this._alias = undefined; - } - // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; - } - - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); - } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; - } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; - } - // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; - } - - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get aggregationInput() { + return this._aggregation; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get facetInput() { + return this._facet; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putLimit(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get intervalInput() { + return this._interval; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4164,44 +3778,58 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestForm /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery { /** - * The aggregation method. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * The facet name. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly facet?: string; + readonly searchQuery?: string; /** - * Define the time interval in seconds. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly interval?: number; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4212,343 +3840,433 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQ super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._facet !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.searchQuery = this._searchQuery; } - if (this._interval !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set interval(value: number) { - this._interval = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats { /** - * The aggregation method. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly aggregation: string; + readonly comparator: string; /** - * The facet name. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly facet?: string; + readonly customBgColor?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly order: string; + readonly customFgColor?: string; + /** + * Setting this to True hides values. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + */ + readonly hideValue?: boolean | cdktf.IResolvable; + /** + * Displays an image as the background. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + */ + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.comparator = this._comparator; } - if (this._facet !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.customBgColor = this._customBgColor; } - if (this._order !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get comparatorInput() { + return this._comparator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); } - public set facet(value: string) { - this._facet = value; + public set customBgColor(value: string) { + this._customBgColor = value; } - public resetFacet() { - this._facet = undefined; + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get customBgColorInput() { + return this._customBgColor; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set order(value: string) { - this._order = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public resetCustomFgColor() { + this._customFgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customFgColorInput() { + return this._customFgColor; } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery; -} -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } -} - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public resetHideValue() { + this._hideValue = undefined; } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get hideValueInput() { + return this._hideValue; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set facet(value: string) { - this._facet = value; + public set metric(value: string) { + this._metric = value; } - public resetFacet() { - this._facet = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get metricInput() { + return this._metric; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public resetLimit() { - this._limit = undefined; + public set palette(value: string) { + this._palette = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get paletteInput() { + return this._palette; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set timeframe(value: string) { + this._timeframe = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetTimeframe() { + this._timeframe = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4562,452 +4280,301 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQ /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit { /** - * The facet name. + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly facet?: string; + readonly count?: number; /** - * Define the time interval in seconds. + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + count: cdktf.numberToTerraform(struct!.count), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.count = this._count; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._count = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._count = value.count; + this._order = value.order; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set facet(value: string) { - this._facet = value; + public set count(value: number) { + this._count = value; } - public resetFacet() { - this._facet = undefined; + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get countInput() { + return this._count; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set interval(value: number) { - this._interval = value; + public set order(value: string) { + this._order = value; } - public resetInterval() { - this._interval = undefined; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula { /** - * The name of the index to query. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly index: string; + readonly alias?: string; /** - * The search query to use. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly searchQuery?: string; + readonly cellDisplayMode?: string; /** - * compute_query block + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery; + readonly formulaExpression: string; /** - * group_by block + * conditional_formats block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; /** - * multi_compute block + * limit block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly limit?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.alias = this._alias; } - if (this._searchQuery !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.formulaExpression = this._formulaExpression; } - if (this._groupBy?.internalValue !== undefined) { + if (this._conditionalFormats?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._limit?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set index(value: string) { - this._index = value; + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aliasInput() { + return this._alias; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set formulaExpression(value: string) { + this._formulaExpression = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get formulaExpressionInput() { + return this._formulaExpression; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } - - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata { - /** - * The expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias_name Dashboard#alias_name} - */ - readonly aliasName?: string; - /** - * The expression name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#expression Dashboard#expression} - */ - readonly expression: string; -} - -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - alias_name: cdktf.stringToTerraform(struct!.aliasName), - expression: cdktf.stringToTerraform(struct!.expression), - } -} - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aliasName !== undefined) { - hasAnyValues = true; - internalValueResult.aliasName = this._aliasName; - } - if (this._expression !== undefined) { - hasAnyValues = true; - internalValueResult.expression = this._expression; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aliasName = undefined; - this._expression = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aliasName = value.aliasName; - this._expression = value.expression; - } + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } - // alias_name - computed: false, optional: true, required: false - private _aliasName?: string; - public get aliasName() { - return this.getStringAttribute('alias_name'); - } - public set aliasName(value: string) { - this._aliasName = value; - } - public resetAliasName() { - this._aliasName = undefined; - } - // Temporarily expose input value. Use with caution. - public get aliasNameInput() { - return this._aliasName; + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; } - - // expression - computed: false, optional: false, required: true - private _expression?: string; - public get expression() { - return this.getStringAttribute('expression'); + public putLimit(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; } - public set expression(value: string) { - this._expression = value; + public resetLimit() { + this._limit.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get expressionInput() { - return this._expression; + public get limitInput() { + return this._limit.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5021,11 +4588,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMeta /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery { /** * The aggregation method. * @@ -5046,7 +4613,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5058,7 +4625,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestN } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5069,7 +4636,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -5087,7 +4654,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -5147,7 +4714,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery { /** * The aggregation method. * @@ -5168,7 +4735,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5180,7 +4747,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestN } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5191,7 +4758,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -5209,7 +4776,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -5266,7 +4833,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy { /** * The facet name. * @@ -5284,10 +4851,10 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5295,11 +4862,11 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestN return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5313,7 +4880,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -5334,7 +4901,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -5388,11 +4955,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -5404,8 +4971,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5419,11 +4986,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute { /** * The aggregation method. * @@ -5444,7 +5011,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5456,7 +5023,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestN } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5470,7 +5037,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -5491,7 +5058,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -5558,8 +5125,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5573,11 +5140,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery { /** * The name of the index to query. * @@ -5595,22 +5162,22 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5618,13 +5185,13 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestN return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5635,7 +5202,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -5661,7 +5228,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -5710,11 +5277,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -5726,11 +5293,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -5742,11 +5309,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -5757,240 +5324,165 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetw return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery { - /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} - */ - readonly filterBy?: string[]; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata { /** - * The max number of items in the filter list. + * The expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias_name Dashboard#alias_name} */ - readonly limit?: number; + readonly aliasName?: string; /** - * Your chosen metric. + * The expression name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#expression Dashboard#expression} */ - readonly metric: string; - /** - * Your chosen search term. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} - */ - readonly searchBy?: string; + readonly expression: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + alias_name: cdktf.stringToTerraform(struct!.aliasName), + expression: cdktf.stringToTerraform(struct!.expression), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { + if (this._aliasName !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.aliasName = this._aliasName; } - if (this._searchBy !== undefined) { + if (this._expression !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.expression = this._expression; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this.resolvableValue = undefined; + this._aliasName = undefined; + this._expression = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this.resolvableValue = undefined; + this._aliasName = value.aliasName; + this._expression = value.expression; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); + // alias_name - computed: false, optional: true, required: false + private _aliasName?: string; + public get aliasName() { + return this.getStringAttribute('alias_name'); } - public set filterBy(value: string[]) { - this._filterBy = value; + public set aliasName(value: string) { + this._aliasName = value; } - public resetFilterBy() { - this._filterBy = undefined; + public resetAliasName() { + this._aliasName = undefined; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get aliasNameInput() { + return this._aliasName; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // expression - computed: false, optional: false, required: true + private _expression?: string; + public get expression() { + return this.getStringAttribute('expression'); } - public resetLimit() { - this._limit = undefined; + public set expression(value: string) { + this._expression = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get expressionInput() { + return this._expression; } +} - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName: string; /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly primaryTagName?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * @param index the index of the item to return */ - readonly primaryTagValue?: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly stat: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6001,567 +5493,394 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.env = this._env; + internalValueResult.aggregation = this._aggregation; } - if (this._isUpstream !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; + internalValueResult.facet = this._facet; } - if (this._name !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.interval = this._interval; } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { - hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; - } - if (this._service !== undefined) { - hasAnyValues = true; - internalValueResult.service = this._service; - } - if (this._stat !== undefined) { - hasAnyValues = true; - internalValueResult.stat = this._stat; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set dataSource(value: string) { - this._dataSource = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get aggregationInput() { + return this._aggregation; } - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set env(value: string) { - this._env = value; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get facetInput() { + return this._facet; } - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + public set interval(value: number) { + this._interval = value; } - public resetIsUpstream() { - this._isUpstream = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get intervalInput() { + return this._interval; } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } +} - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } } - public set primaryTagName(value: string) { - this._primaryTagName = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get aggregationInput() { + return this._aggregation; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set facet(value: string) { + this._facet = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get facetInput() { + return this._facet; } - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set resourceName(value: string) { - this._resourceName = value; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; - } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; - } - - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; - } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Array of fields to group results by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: string[]; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName?: string; - /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} - */ - readonly primaryTagName?: string; - /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} - */ - readonly primaryTagValue?: string; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy { /** - * APM resource. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly resourceName?: string; + readonly facet?: string; /** - * APM service. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly service: string; + readonly limit?: number; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly stat: string; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._groupBy !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.facet = this._facet; } - if (this._service !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.limit = this._limit; } - if (this._stat !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + public set facet(value: string) { + this._facet = value; } - public set env(value: string) { - this._env = value; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get facetInput() { + return this._facet; } - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set groupBy(value: string[]) { - this._groupBy = value; + public set limit(value: number) { + this._limit = value; } - public resetGroupBy() { - this._groupBy = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; + public get limitInput() { + return this._limit; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set name(value: string) { - this._name = value; + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; - } - public resetOperationName() { - this._operationName = undefined; - } - // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; - } - - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); - } - public set primaryTagName(value: string) { - this._primaryTagName = value; - } - public resetPrimaryTagName() { - this._primaryTagName = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; - } - - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; - } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; - } - - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - public resetResourceName() { - this._resourceName = undefined; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; - } +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; - } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The aggregation method. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * A time interval in milliseconds. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly interval?: number; + readonly facet?: string; /** - * The measurable attribute to compute. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly metric?: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -6575,7 +5894,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -6585,24 +5904,24 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._interval !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.facet = this._facet; } - if (this._metric !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._aggregation = undefined; + this._facet = undefined; this._interval = undefined; - this._metric = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -6612,8 +5931,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._aggregation = value.aggregation; + this._facet = value.facet; this._interval = value.interval; - this._metric = value.metric; } } @@ -6630,6 +5949,22 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer return this._aggregation; } + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + // interval - computed: false, optional: true, required: false private _interval?: number; public get interval() { @@ -6645,26 +5980,10 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer public get intervalInput() { return this._interval; } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -6678,44 +5997,58 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery { /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * The metric used for sorting group by results. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly metric?: string; + readonly searchQuery?: string; /** - * Direction of sort. Valid values are `asc`, `desc`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly order?: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6726,184 +6059,232 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._metric !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.searchQuery = this._searchQuery; } - if (this._order !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._metric = undefined; - this._order = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._metric = value.metric; - this._order = value.order; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set metric(value: string) { - this._metric = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetMetric() { - this._metric = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get searchQueryInput() { + return this._searchQuery; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set order(value: string) { - this._order = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetOrder() { - this._order = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery { /** - * The event facet. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly facet: string; + readonly filterBy?: string[]; /** - * The number of groups to return. + * The max number of items in the filter list. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort block + * Your chosen metric. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly sort?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort; + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.filterBy = this._filterBy; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sort?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; + this._filterBy = undefined; this._limit = undefined; - this._sort.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; + this._filterBy = value.filterBy; this._limit = value.limit; - this._sort.internalValue = value.sort; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set facet(value: string) { - this._facet = value; + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get filterByInput() { + return this._filterBy; } // limit - computed: false, optional: true, required: false @@ -6922,161 +6303,118 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer return this._limit; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public putSort(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set metric(value: string) { + this._metric = value; } - public resetSort() { - this._sort.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get searchByInput() { + return this._searchBy; } } - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * APM Environment. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch { + readonly env: string; /** - * The events search string. + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly query: string; -} - -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - query: cdktf.stringToTerraform(struct!.query), - } -} - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - + readonly isUpstream?: boolean | cdktf.IResolvable; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._query !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._query = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; - } - } - - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); - } - public set query(value: string) { - this._query = value; - } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery { + readonly name: string; /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly dataSource: string; + readonly operationName: string; /** - * An array of index names to query in the stream. + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly indexes?: string[]; + readonly primaryTagName?: string; /** - * The name of query for use in formulas. + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly name: string; + readonly primaryTagValue?: string; /** - * compute block + * APM resource. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} */ - readonly compute: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly resourceName: string; /** - * group_by block + * APM service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly service: string; /** - * search block + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} */ - readonly search?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch; + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7087,54 +6425,78 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._indexes !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.env = this._env; + } + if (this._isUpstream !== undefined) { + hasAnyValues = true; + internalValueResult.isUpstream = this._isUpstream; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._compute?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.operationName = this._operationName; } - if (this._groupBy?.internalValue !== undefined) { + if (this._primaryTagName !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.primaryTagName = this._primaryTagName; } - if (this._search?.internalValue !== undefined) { + if (this._primaryTagValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._dataSource = undefined; - this._indexes = undefined; + this._env = undefined; + this._isUpstream = undefined; this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dataSource = value.dataSource; - this._indexes = value.indexes; + this._env = value.env; + this._isUpstream = value.isUpstream; this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } @@ -7151,20 +6513,33 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer return this._dataSource; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public set indexes(value: string[]) { - this._indexes = value; + public set env(value: string) { + this._env = value; } - public resetIndexes() { - this._indexes = undefined; + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); + } + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; + } + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get isUpstreamInput() { + return this._isUpstream; } // name - computed: false, optional: false, required: true @@ -7180,92 +6555,173 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer return this._name; } - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public putCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set operationName(value: string) { + this._operationName = value; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get operationNameInput() { + return this._operationName; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get primaryTagNameInput() { + return this._primaryTagName; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public putSearch(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get primaryTagValueInput() { + return this._primaryTagValue; } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; + + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery { /** - * The data source for metrics queries. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly dataSource?: string; + readonly dataSource: string; /** - * The name of the query for use in formulas. + * APM Environment. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + */ + readonly env: string; + /** + * Array of fields to group results by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: string[]; + /** + * The name of query for use in formulas. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ readonly name: string; /** - * The metrics query definition. + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly query: string; + readonly operationName?: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7276,62 +6732,82 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } + if (this._env !== undefined) { + hasAnyValues = true; + internalValueResult.env = this._env; + } + if (this._groupBy !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy; + } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._query !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; this._dataSource = undefined; + this._env = undefined; + this._groupBy = undefined; this._name = undefined; - this._query = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; this._dataSource = value.dataSource; + this._env = value.env; + this._groupBy = value.groupBy; this._name = value.name; - this._query = value.query; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: true, required: false + // data_source - computed: false, optional: false, required: true private _dataSource?: string; public get dataSource() { return this.getStringAttribute('data_source'); @@ -7339,14 +6815,40 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer public set dataSource(value: string) { this._dataSource = value; } - public resetDataSource() { - this._dataSource = undefined; - } // Temporarily expose input value. Use with caution. public get dataSourceInput() { return this._dataSource; } + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); + } + public set env(value: string) { + this._env = value; + } + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy; + } + // name - computed: false, optional: false, required: true private _name?: string; public get name() { @@ -7360,357 +6862,406 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer return this._name; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public set query(value: string) { - this._query = value; + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get operationNameInput() { + return this._operationName; } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} - */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; - /** - * The number of hits to return. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * The process metric name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; + + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } + + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute { /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly sort?: string; + readonly aggregation: string; /** - * An array of tags to filter by. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly tagFilters?: string[]; + readonly interval?: number; /** - * The text to use as a filter. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly textFilter?: string; + readonly metric?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; + internalValueResult.aggregation = this._aggregation; } - if (this._limit !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.interval = this._interval; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { - hasAnyValues = true; - internalValueResult.sort = this._sort; - } - if (this._tagFilters !== undefined) { - hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; - } - if (this._textFilter !== undefined) { - hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; - } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetAggregator() { - this._aggregator = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get aggregationInput() { + return this._aggregation; } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set dataSource(value: string) { - this._dataSource = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get intervalInput() { + return this._interval; } - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; + public set metric(value: string) { + this._metric = value; } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; + public get metricInput() { + return this._metric; } +} - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } - public set metric(value: string) { - this._metric = value; +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort { + /** + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The metric used for sorting group by results. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * Direction of sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order?: string; +} + +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + metric: cdktf.stringToTerraform(struct!.metric), + order: cdktf.stringToTerraform(struct!.order), } +} - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; } - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._metric = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._metric = value.metric; + this._order = value.order; + } } - public set sort(value: string) { - this._sort = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetSort() { - this._sort = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; + public get aggregationInput() { + return this._aggregation; } - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set tagFilters(value: string[]) { - this._tagFilters = value; + public set metric(value: string) { + this._metric = value; } - public resetTagFilters() { - this._tagFilters = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; + public get metricInput() { + return this._metric; } - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set textFilter(value: string) { - this._textFilter = value; + public set order(value: string) { + this._order = value; } - public resetTextFilter() { - this._textFilter = undefined; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery; - /** - * apm_resource_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} - */ - readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy { /** - * event_query block + * The event facet. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery; + readonly facet: string; /** - * metric_query block + * The number of groups to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery; + readonly limit?: number; /** - * process_query block + * sort block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery; + readonly sort?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -7724,45 +7275,35 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; - } - if (this._eventQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._processQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - } + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; + } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; @@ -7770,97 +7311,60 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; - } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; - } - - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; - } - public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; - } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; - } - - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; - } - public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public set facet(value: string) { + this._facet = value; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get facetInput() { + return this._facet; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get limitInput() { + return this._limit; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public putSort(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -7874,44 +7378,30 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuer /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch { /** - * Define the time interval in seconds. + * The events search string. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7922,118 +7412,102 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQ super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public resetInterval() { - this._interval = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery { /** - * The aggregation method. + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregation: string; + readonly dataSource: string; /** - * The facet name. + * An array of index names to query in the stream. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - readonly facet?: string; + readonly indexes?: string[]; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly order: string; + readonly name: string; + /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** + * compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + */ + readonly compute: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8044,573 +7518,820 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQ super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._facet !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.indexes = this._indexes; } - if (this._order !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set aggregation(value: string) { - this._aggregation = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get dataSourceInput() { + return this._dataSource; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public set facet(value: string) { - this._facet = value; + public set indexes(value: string[]) { + this._indexes = value; } - public resetFacet() { - this._facet = undefined; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get indexesInput() { + return this._indexes; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set order(value: string) { - this._order = value; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; + } + public putCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; + } + public putSearch(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; + } + public resetSearch() { + this._search.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchInput() { + return this._search.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery { /** - * The facet name. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly facet?: string; + readonly aggregator?: string; /** - * The maximum number of items in the group. + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly limit?: number; + readonly dataSource?: string; /** - * sort_query block + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery; + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.aggregator = this._aggregator; } - if (this._limit !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.dataSource = this._dataSource; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set facet(value: string) { - this._facet = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetFacet() { - this._facet = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get aggregatorInput() { + return this._aggregator; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set limit(value: number) { - this._limit = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetLimit() { - this._limit = undefined; + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get dataSourceInput() { + return this._dataSource; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get queryInput() { + return this._query; } } - -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly aggregator?: string; /** - * @param index the index of the item to return + * The data source for process queries. Valid values are `process`, `container`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute { + readonly dataSource: string; /** - * The aggregation method. + * Whether to normalize the CPU percentages. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} */ - readonly aggregation: string; + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; /** - * The facet name. + * The number of hits to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly facet?: string; + readonly limit?: number; /** - * Define the time interval in seconds. + * The process metric name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly interval?: number; + readonly metric: string; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The direction of the sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: string; + /** + * An array of tags to filter by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + */ + readonly tagFilters?: string[]; + /** + * The text to use as a filter. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + */ + readonly textFilter?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._interval !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetFacet() { - this._facet = undefined; + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); + } + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; + } + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get limitInput() { + return this._limit; } -} -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); + } + public set sort(value: string) { + this._sort = value; + } + public resetSort() { + this._sort = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortInput() { + return this._sort; + } + + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); + } + public set tagFilters(value: string[]) { + this._tagFilters = value; + } + public resetTagFilters() { + this._tagFilters = undefined; + } + // Temporarily expose input value. Use with caution. + public get tagFiltersInput() { + return this._tagFilters; + } + + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); + } + public set textFilter(value: string) { + this._textFilter = value; + } + public resetTextFilter() { + this._textFilter = undefined; + } + // Temporarily expose input value. Use with caution. + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery { /** - * The name of the index to query. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly index: string; + readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery; /** - * The search query to use. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly searchQuery?: string; + readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery; /** - * compute_query block + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery; + readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery; /** - * group_by block + * metric_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery; /** - * multi_compute block + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._searchQuery !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.eventQuery = this._eventQuery?.internalValue; } - if (this._groupBy?.internalValue !== undefined) { + if (this._metricQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.metricQuery = this._metricQuery?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set index(value: string) { - this._index = value; + public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; + } + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public resetSearchQuery() { - this._searchQuery = undefined; + public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; + } + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get eventQueryInput() { + return this._eventQuery.internalValue; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get metricQueryInput() { + return this._metricQuery.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get processQueryInput() { + return this._processQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery { + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery { /** * The aggregation method. * @@ -8631,7 +8352,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8643,7 +8364,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestS } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8654,7 +8375,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -8672,7 +8393,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -8732,7 +8453,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery { /** * The aggregation method. * @@ -8753,7 +8474,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8765,7 +8486,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestS } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8776,7 +8497,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -8794,7 +8515,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -8851,7 +8572,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy { /** * The facet name. * @@ -8869,10 +8590,10 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8880,11 +8601,11 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestS return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -8898,7 +8619,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -8919,7 +8640,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -8973,11 +8694,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -8989,8 +8710,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -9004,11 +8725,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute { /** * The aggregation method. * @@ -9029,7 +8750,7 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9041,7 +8762,7 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestS } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -9055,7 +8776,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -9076,7 +8797,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -9143,8 +8864,8 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -9158,11 +8879,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery { /** * The name of the index to query. * @@ -9180,22 +8901,22 @@ export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9203,13 +8924,13 @@ export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestS return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9220,7 +8941,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -9246,7 +8967,7 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -9295,11 +9016,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -9311,11 +9032,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -9327,11 +9048,11 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -9342,40 +9063,40 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecu return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery { /** - * The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_type Dashboard#line_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly lineType?: string; + readonly aggregation: string; /** - * The width of line displayed. Valid values are `normal`, `thick`, `thin`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_width Dashboard#line_width} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly lineWidth?: string; + readonly facet?: string; /** - * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly palette?: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - line_type: cdktf.stringToTerraform(struct!.lineType), - line_width: cdktf.stringToTerraform(struct!.lineWidth), - palette: cdktf.stringToTerraform(struct!.palette), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9386,546 +9107,497 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyl super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._lineType !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.lineType = this._lineType; + internalValueResult.aggregation = this._aggregation; } - if (this._lineWidth !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.lineWidth = this._lineWidth; + internalValueResult.facet = this._facet; } - if (this._palette !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._lineType = undefined; - this._lineWidth = undefined; - this._palette = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._lineType = value.lineType; - this._lineWidth = value.lineWidth; - this._palette = value.palette; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // line_type - computed: false, optional: true, required: false - private _lineType?: string; - public get lineType() { - return this.getStringAttribute('line_type'); - } - public set lineType(value: string) { - this._lineType = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLineType() { - this._lineType = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get lineTypeInput() { - return this._lineType; + public get aggregationInput() { + return this._aggregation; } - // line_width - computed: false, optional: true, required: false - private _lineWidth?: string; - public get lineWidth() { - return this.getStringAttribute('line_width'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set lineWidth(value: string) { - this._lineWidth = value; + public set facet(value: string) { + this._facet = value; } - public resetLineWidth() { - this._lineWidth = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get lineWidthInput() { - return this._lineWidth; + public get facetInput() { + return this._facet; } - // palette - computed: false, optional: true, required: false - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set palette(value: string) { - this._palette = value; + public set interval(value: number) { + this._interval = value; } - public resetPalette() { - this._palette = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest { - /** - * How to display the marker lines. Valid values are `area`, `bars`, `line`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} - */ - readonly displayType?: string; - /** - * A Boolean indicating whether the request uses the right or left Y-Axis. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#on_right_yaxis Dashboard#on_right_yaxis} - */ - readonly onRightYaxis?: boolean | cdktf.IResolvable; - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery; - /** - * audit_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} - */ - readonly auditQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery; - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery; - /** - * metadata block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metadata Dashboard#metadata} - */ - readonly metadata?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable; - /** - * network_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} - */ - readonly networkQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery; - /** - * query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery { /** - * rum_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly rumQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery; + readonly aggregation: string; /** - * security_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly securityQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery; + readonly facet?: string; /** - * style block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly style?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - display_type: cdktf.stringToTerraform(struct!.displayType), - on_right_yaxis: cdktf.booleanToTerraform(struct!.onRightYaxis), - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - audit_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), - formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct!.logQuery), - metadata: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataToTerraform, true)(struct!.metadata), - network_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), - process_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), - style: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleToTerraform(struct!.style), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._displayType !== undefined) { - hasAnyValues = true; - internalValueResult.displayType = this._displayType; - } - if (this._onRightYaxis !== undefined) { - hasAnyValues = true; - internalValueResult.onRightYaxis = this._onRightYaxis; - } - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._auditQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.auditQuery = this._auditQuery?.internalValue; - } - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._metadata?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.metadata = this._metadata?.internalValue; - } - if (this._networkQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.networkQuery = this._networkQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._query?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; - } - if (this._rumQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._style?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.style = this._style?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._displayType = undefined; - this._onRightYaxis = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._auditQuery.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._metadata.internalValue = undefined; - this._networkQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - this._style.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._displayType = value.displayType; - this._onRightYaxis = value.onRightYaxis; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._auditQuery.internalValue = value.auditQuery; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._metadata.internalValue = value.metadata; - this._networkQuery.internalValue = value.networkQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; - this._style.internalValue = value.style; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // display_type - computed: false, optional: true, required: false - private _displayType?: string; - public get displayType() { - return this.getStringAttribute('display_type'); - } - public set displayType(value: string) { - this._displayType = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetDisplayType() { - this._displayType = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get displayTypeInput() { - return this._displayType; + public get aggregationInput() { + return this._aggregation; } - // on_right_yaxis - computed: false, optional: true, required: false - private _onRightYaxis?: boolean | cdktf.IResolvable; - public get onRightYaxis() { - return this.getBooleanAttribute('on_right_yaxis'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set onRightYaxis(value: boolean | cdktf.IResolvable) { - this._onRightYaxis = value; + public set facet(value: string) { + this._facet = value; } - public resetOnRightYaxis() { - this._onRightYaxis = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get onRightYaxisInput() { - return this._onRightYaxis; + public get facetInput() { + return this._facet; } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetQ() { - this._q = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; + public get orderInput() { + return this._order; } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery; +} - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } +} - // audit_query - computed: false, optional: true, required: false - private _auditQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryOutputReference(this, "audit_query"); - public get auditQuery() { - return this._auditQuery; - } - public putAuditQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery) { - this._auditQuery.internalValue = value; - } - public resetAuditQuery() { - this._auditQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get auditQueryInput() { - return this._auditQuery.internalValue; - } +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public resetFormula() { - this._formula.internalValue = undefined; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } } - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putLogQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetLogQuery() { - this._logQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; + public get facetInput() { + return this._facet; } - // metadata - computed: false, optional: true, required: false - private _metadata = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataList(this, "metadata", false); - public get metadata() { - return this._metadata; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetadata(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable) { - this._metadata.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetadata() { - this._metadata.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metadataInput() { - return this._metadata.internalValue; + public get limitInput() { + return this._limit; } - // network_query - computed: false, optional: true, required: false - private _networkQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference(this, "network_query"); - public get networkQuery() { - return this._networkQuery; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putNetworkQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery) { - this._networkQuery.internalValue = value; + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetNetworkQuery() { - this._networkQuery.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get networkQueryInput() { - return this._networkQuery.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; - } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public putQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } - public resetQuery() { - this._query.internalValue = undefined; +} + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } } - public putRumQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putSecurityQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get facetInput() { + return this._facet; } - // style - computed: false, optional: true, required: false - private _style = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleOutputReference(this, "style"); - public get style() { - return this._style; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putStyle(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle) { - this._style.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetStyle() { - this._style.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get styleInput() { - return this._style.internalValue; + public get intervalInput() { + return this._interval; } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -9939,58 +9611,58 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery { /** - * Always include zero or fit the axis to the data range. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly includeZero?: boolean | cdktf.IResolvable; + readonly index: string; /** - * The label of the axis to display on the graph. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly label?: string; + readonly searchQuery?: string; /** - * Specify the maximum value to show on the Y-axis. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly max?: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery; /** - * Specify the minimum value to show on the Y-axis. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly min?: string; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly scale?: string; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10001,179 +9673,162 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; + internalValueResult.index = this._index; } - if (this._label !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.searchQuery = this._searchQuery; } - if (this._max !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._min !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._scale !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); - } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetIncludeZero() { - this._includeZero = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; + public get indexInput() { + return this._index; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set label(value: string) { - this._label = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLabel() { - this._label = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get searchQueryInput() { + return this._searchQuery; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set max(value: string) { - this._max = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetMax() { - this._max = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set min(value: string) { - this._min = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetMin() { - this._min = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; + public get groupByInput() { + return this._groupBy.internalValue; } - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set scale(value: string) { - this._scale = value; + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetScale() { - this._scale = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis { - /** - * Always include zero or fit the axis to the data range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} - */ - readonly includeZero?: boolean | cdktf.IResolvable; - /** - * The label of the axis to display on the graph. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle { /** - * Specify the maximum value to show on the Y-axis. + * The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_type Dashboard#line_type} */ - readonly max?: string; + readonly lineType?: string; /** - * Specify the minimum value to show on the Y-axis. + * The width of line displayed. Valid values are `normal`, `thick`, `thin`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_width Dashboard#line_width} */ - readonly min?: string; + readonly lineWidth?: string; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} */ - readonly scale?: string; + readonly palette?: string; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + line_type: cdktf.stringToTerraform(struct!.lineType), + line_width: cdktf.stringToTerraform(struct!.lineWidth), + palette: cdktf.stringToTerraform(struct!.palette), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10184,691 +9839,680 @@ export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutput super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { - hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._max !== undefined) { + if (this._lineType !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.lineType = this._lineType; } - if (this._min !== undefined) { + if (this._lineWidth !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.lineWidth = this._lineWidth; } - if (this._scale !== undefined) { + if (this._palette !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.palette = this._palette; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this._lineType = undefined; + this._lineWidth = undefined; + this._palette = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this._lineType = value.lineType; + this._lineWidth = value.lineWidth; + this._palette = value.palette; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); + // line_type - computed: false, optional: true, required: false + private _lineType?: string; + public get lineType() { + return this.getStringAttribute('line_type'); } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; + public set lineType(value: string) { + this._lineType = value; } - public resetIncludeZero() { - this._includeZero = undefined; + public resetLineType() { + this._lineType = undefined; } // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; + public get lineTypeInput() { + return this._lineType; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // line_width - computed: false, optional: true, required: false + private _lineWidth?: string; + public get lineWidth() { + return this.getStringAttribute('line_width'); } - public set label(value: string) { - this._label = value; + public set lineWidth(value: string) { + this._lineWidth = value; } - public resetLabel() { - this._label = undefined; + public resetLineWidth() { + this._lineWidth = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get lineWidthInput() { + return this._lineWidth; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + // palette - computed: false, optional: true, required: false + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public set max(value: string) { - this._max = value; - } - public resetMax() { - this._max = undefined; - } - // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; - } - - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); - } - public set min(value: string) { - this._min = value; - } - public resetMin() { - this._min = undefined; - } - // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; - } - - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); - } - public set scale(value: string) { - this._scale = value; + public set palette(value: string) { + this._palette = value; } - public resetScale() { - this._scale = undefined; + public resetPalette() { + this._palette = undefined; } // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; + public get paletteInput() { + return this._palette; } } -export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest { /** - * A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. + * How to display the marker lines. Valid values are `area`, `bars`, `line`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_columns Dashboard#legend_columns} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} */ - readonly legendColumns?: string[]; + readonly displayType?: string; /** - * The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. + * A Boolean indicating whether the request uses the right or left Y-Axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_layout Dashboard#legend_layout} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#on_right_yaxis Dashboard#on_right_yaxis} */ - readonly legendLayout?: string; + readonly onRightYaxis?: boolean | cdktf.IResolvable; /** - * The size of the legend displayed in the widget. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_size Dashboard#legend_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly legendSize?: string; + readonly q?: string; /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly liveSpan?: string; + readonly apmQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery; /** - * Whether or not to show the legend on this widget. + * audit_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_legend Dashboard#show_legend} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} */ - readonly showLegend?: boolean | cdktf.IResolvable; + readonly auditQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery; /** - * The title of the widget. + * formula block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} */ - readonly title?: string; + readonly formula?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable; /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly titleAlign?: string; + readonly logQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery; /** - * The size of the widget's title (defaults to 16). + * metadata block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metadata Dashboard#metadata} */ - readonly titleSize?: string; + readonly metadata?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable; /** - * custom_link block + * network_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} */ - readonly customLink?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable; + readonly networkQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery; /** - * event block + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event Dashboard#event} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly event?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable; + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery; /** - * marker block + * query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#marker Dashboard#marker} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly marker?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable; + readonly query?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable; /** - * request block + * rum_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} */ - readonly request?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable; + readonly rumQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery; /** - * right_yaxis block + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#right_yaxis Dashboard#right_yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly rightYaxis?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis; + readonly securityQuery?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery; /** - * yaxis block + * style block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} */ - readonly yaxis?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis; + readonly style?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle; } -export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - legend_columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.legendColumns), - legend_layout: cdktf.stringToTerraform(struct!.legendLayout), - legend_size: cdktf.stringToTerraform(struct!.legendSize), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - show_legend: cdktf.booleanToTerraform(struct!.showLegend), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkToTerraform, true)(struct!.customLink), - event: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventToTerraform, true)(struct!.event), - marker: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerToTerraform, true)(struct!.marker), - request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestToTerraform, true)(struct!.request), - right_yaxis: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisToTerraform(struct!.rightYaxis), - yaxis: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisToTerraform(struct!.yaxis), + display_type: cdktf.stringToTerraform(struct!.displayType), + on_right_yaxis: cdktf.booleanToTerraform(struct!.onRightYaxis), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + audit_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), + formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct!.logQuery), + metadata: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataToTerraform, true)(struct!.metadata), + network_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), + process_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), + style: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleToTerraform(struct!.style), } } -export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._legendColumns !== undefined) { + if (this._displayType !== undefined) { hasAnyValues = true; - internalValueResult.legendColumns = this._legendColumns; + internalValueResult.displayType = this._displayType; } - if (this._legendLayout !== undefined) { + if (this._onRightYaxis !== undefined) { hasAnyValues = true; - internalValueResult.legendLayout = this._legendLayout; + internalValueResult.onRightYaxis = this._onRightYaxis; } - if (this._legendSize !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.legendSize = this._legendSize; + internalValueResult.q = this._q; } - if (this._liveSpan !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._showLegend !== undefined) { + if (this._auditQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.showLegend = this._showLegend; + internalValueResult.auditQuery = this._auditQuery?.internalValue; } - if (this._title !== undefined) { + if (this._formula?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.title = this._title; + internalValueResult.formula = this._formula?.internalValue; } - if (this._titleAlign !== undefined) { + if (this._logQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; + internalValueResult.logQuery = this._logQuery?.internalValue; } - if (this._titleSize !== undefined) { + if (this._metadata?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.metadata = this._metadata?.internalValue; } - if (this._customLink?.internalValue !== undefined) { + if (this._networkQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; + internalValueResult.networkQuery = this._networkQuery?.internalValue; } - if (this._event?.internalValue !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.event = this._event?.internalValue; + internalValueResult.processQuery = this._processQuery?.internalValue; } - if (this._marker?.internalValue !== undefined) { + if (this._query?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.marker = this._marker?.internalValue; + internalValueResult.query = this._query?.internalValue; } - if (this._request?.internalValue !== undefined) { + if (this._rumQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.rumQuery = this._rumQuery?.internalValue; } - if (this._rightYaxis?.internalValue !== undefined) { + if (this._securityQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.rightYaxis = this._rightYaxis?.internalValue; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } - if (this._yaxis?.internalValue !== undefined) { + if (this._style?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.yaxis = this._yaxis?.internalValue; + internalValueResult.style = this._style?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._legendColumns = undefined; - this._legendLayout = undefined; - this._legendSize = undefined; - this._liveSpan = undefined; - this._showLegend = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._event.internalValue = undefined; - this._marker.internalValue = undefined; - this._request.internalValue = undefined; - this._rightYaxis.internalValue = undefined; - this._yaxis.internalValue = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._legendColumns = value.legendColumns; - this._legendLayout = value.legendLayout; - this._legendSize = value.legendSize; - this._liveSpan = value.liveSpan; - this._showLegend = value.showLegend; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._event.internalValue = value.event; - this._marker.internalValue = value.marker; - this._request.internalValue = value.request; - this._rightYaxis.internalValue = value.rightYaxis; - this._yaxis.internalValue = value.yaxis; + this.resolvableValue = undefined; + this._displayType = undefined; + this._onRightYaxis = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._auditQuery.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._metadata.internalValue = undefined; + this._networkQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + this._style.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._displayType = value.displayType; + this._onRightYaxis = value.onRightYaxis; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._auditQuery.internalValue = value.auditQuery; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._metadata.internalValue = value.metadata; + this._networkQuery.internalValue = value.networkQuery; + this._processQuery.internalValue = value.processQuery; + this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; + this._style.internalValue = value.style; } } - // legend_columns - computed: false, optional: true, required: false - private _legendColumns?: string[]; - public get legendColumns() { - return cdktf.Fn.tolist(this.getListAttribute('legend_columns')); + // display_type - computed: false, optional: true, required: false + private _displayType?: string; + public get displayType() { + return this.getStringAttribute('display_type'); } - public set legendColumns(value: string[]) { - this._legendColumns = value; + public set displayType(value: string) { + this._displayType = value; } - public resetLegendColumns() { - this._legendColumns = undefined; + public resetDisplayType() { + this._displayType = undefined; } // Temporarily expose input value. Use with caution. - public get legendColumnsInput() { - return this._legendColumns; + public get displayTypeInput() { + return this._displayType; } - // legend_layout - computed: false, optional: true, required: false - private _legendLayout?: string; - public get legendLayout() { - return this.getStringAttribute('legend_layout'); + // on_right_yaxis - computed: false, optional: true, required: false + private _onRightYaxis?: boolean | cdktf.IResolvable; + public get onRightYaxis() { + return this.getBooleanAttribute('on_right_yaxis'); } - public set legendLayout(value: string) { - this._legendLayout = value; + public set onRightYaxis(value: boolean | cdktf.IResolvable) { + this._onRightYaxis = value; } - public resetLegendLayout() { - this._legendLayout = undefined; + public resetOnRightYaxis() { + this._onRightYaxis = undefined; } // Temporarily expose input value. Use with caution. - public get legendLayoutInput() { - return this._legendLayout; + public get onRightYaxisInput() { + return this._onRightYaxis; } - // legend_size - computed: false, optional: true, required: false - private _legendSize?: string; - public get legendSize() { - return this.getStringAttribute('legend_size'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set legendSize(value: string) { - this._legendSize = value; + public set q(value: string) { + this._q = value; } - public resetLegendSize() { - this._legendSize = undefined; + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get legendSizeInput() { - return this._legendSize; + public get qInput() { + return this._q; } - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set liveSpan(value: string) { - this._liveSpan = value; + public putApmQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; } - public resetLiveSpan() { - this._liveSpan = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // show_legend - computed: false, optional: true, required: false - private _showLegend?: boolean | cdktf.IResolvable; - public get showLegend() { - return this.getBooleanAttribute('show_legend'); + // audit_query - computed: false, optional: true, required: false + private _auditQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQueryOutputReference(this, "audit_query"); + public get auditQuery() { + return this._auditQuery; } - public set showLegend(value: boolean | cdktf.IResolvable) { - this._showLegend = value; + public putAuditQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestAuditQuery) { + this._auditQuery.internalValue = value; } - public resetShowLegend() { - this._showLegend = undefined; + public resetAuditQuery() { + this._auditQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get showLegendInput() { - return this._showLegend; + public get auditQueryInput() { + return this._auditQuery.internalValue; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - public set title(value: string) { - this._title = value; + public putFormula(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; } - public resetTitle() { - this._title = undefined; + public resetFormula() { + this._formula.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get formulaInput() { + return this._formula.internalValue; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - public set titleAlign(value: string) { - this._titleAlign = value; + public putLogQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetLogQuery() { + this._logQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get logQueryInput() { + return this._logQuery.internalValue; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); + // metadata - computed: false, optional: true, required: false + private _metadata = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadataList(this, "metadata", false); + public get metadata() { + return this._metadata; } - public set titleSize(value: string) { - this._titleSize = value; + public putMetadata(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable) { + this._metadata.internalValue = value; } - public resetTitleSize() { - this._titleSize = undefined; + public resetMetadata() { + this._metadata.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get metadataInput() { + return this._metadata.internalValue; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // network_query - computed: false, optional: true, required: false + private _networkQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference(this, "network_query"); + public get networkQuery() { + return this._networkQuery; } - public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public putNetworkQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestNetworkQuery) { + this._networkQuery.internalValue = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetNetworkQuery() { + this._networkQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get networkQueryInput() { + return this._networkQuery.internalValue; } - // event - computed: false, optional: true, required: false - private _event = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventList(this, "event", false); - public get event() { - return this._event; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putEvent(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable) { - this._event.internalValue = value; + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; } - public resetEvent() { - this._event.internalValue = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get eventInput() { - return this._event.internalValue; + public get processQueryInput() { + return this._processQuery.internalValue; } - // marker - computed: false, optional: true, required: false - private _marker = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerList(this, "marker", false); - public get marker() { - return this._marker; + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public putMarker(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable) { - this._marker.internalValue = value; + public putQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetMarker() { - this._marker.internalValue = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get markerInput() { - return this._marker.internalValue; + public get queryInput() { + return this._query.internalValue; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestList(this, "request", false); - public get request() { - return this._request; + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public putRequest(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; + public putRumQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; } - public resetRequest() { - this._request.internalValue = undefined; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // right_yaxis - computed: false, optional: true, required: false - private _rightYaxis = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisOutputReference(this, "right_yaxis"); - public get rightYaxis() { - return this._rightYaxis; + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public putRightYaxis(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis) { - this._rightYaxis.internalValue = value; + public putSecurityQuery(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetRightYaxis() { - this._rightYaxis.internalValue = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get rightYaxisInput() { - return this._rightYaxis.internalValue; + public get securityQueryInput() { + return this._securityQuery.internalValue; } - // yaxis - computed: false, optional: true, required: false - private _yaxis = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutputReference(this, "yaxis"); - public get yaxis() { - return this._yaxis; + // style - computed: false, optional: true, required: false + private _style = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyleOutputReference(this, "style"); + public get style() { + return this._style; } - public putYaxis(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis) { - this._yaxis.internalValue = value; + public putStyle(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestStyle) { + this._style.internalValue = value; } - public resetYaxis() { - this._yaxis.internalValue = undefined; + public resetStyle() { + this._style.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get yaxisInput() { - return this._yaxis.internalValue; + public get styleInput() { + return this._style.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink { + +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable + /** - * The flag for toggling context menu link visibility. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis { + /** + * Always include zero or fit the axis to the data range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly includeZero?: boolean | cdktf.IResolvable; /** - * The label for the custom link URL. + * The label of the axis to display on the graph. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ readonly label?: string; /** - * The URL of the custom link. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly link?: string; + readonly max?: string; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * Specify the minimum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} */ - readonly overrideLabel?: string; + readonly min?: string; + /** + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + */ + readonly scale?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.includeZero = this._includeZero; } if (this._label !== undefined) { hasAnyValues = true; internalValueResult.label = this._label; } - if (this._link !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.max = this._max; } - if (this._overrideLabel !== undefined) { + if (this._min !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.min = this._min; + } + if (this._scale !== undefined) { + hasAnyValues = true; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; + this._includeZero = undefined; this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; + this._includeZero = value.includeZero; this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; } - public resetIsHidden() { - this._isHidden = undefined; + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get includeZeroInput() { + return this._includeZero; } // label - computed: false, optional: true, required: false @@ -10887,92 +10531,102 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutp return this._label; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set link(value: string) { - this._link = value; + public set max(value: string) { + this._max = value; } - public resetLink() { - this._link = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get maxInput() { + return this._max; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public set min(value: string) { + this._min = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetMin() { + this._min = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get minInput() { + return this._min; } -} -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set scale(value: string) { + this._scale = value; + } + public resetScale() { + this._scale = undefined; + } + // Temporarily expose input value. Use with caution. + public get scaleInput() { + return this._scale; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis { /** - * The aggregation method. + * Always include zero or fit the axis to the data range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - readonly aggregation: string; + readonly includeZero?: boolean | cdktf.IResolvable; /** - * The facet name. + * The label of the axis to display on the graph. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly facet?: string; + readonly label?: string; /** - * Define the time interval in seconds. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly interval?: number; + readonly max?: string; + /** + * Specify the minimum value to show on the Y-axis. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + */ + readonly min?: string; + /** + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + */ + readonly scale?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), + label: cdktf.stringToTerraform(struct!.label), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10983,695 +10637,762 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.includeZero = this._includeZero; } - if (this._facet !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.label = this._label; } - if (this._interval !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.max = this._max; + } + if (this._min !== undefined) { + hasAnyValues = true; + internalValueResult.min = this._min; + } + if (this._scale !== undefined) { + hasAnyValues = true; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._includeZero = undefined; + this._label = undefined; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._includeZero = value.includeZero; + this._label = value.label; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - public set aggregation(value: string) { - this._aggregation = value; + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; + } + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get includeZeroInput() { + return this._includeZero; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set facet(value: string) { - this._facet = value; + public set label(value: string) { + this._label = value; } - public resetFacet() { - this._facet = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get labelInput() { + return this._label; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set interval(value: number) { - this._interval = value; + public set max(value: string) { + this._max = value; } - public resetInterval() { - this._interval = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get maxInput() { + return this._max; + } + + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); + } + public set min(value: string) { + this._min = value; + } + public resetMin() { + this._min = undefined; + } + // Temporarily expose input value. Use with caution. + public get minInput() { + return this._min; + } + + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); + } + public set scale(value: string) { + this._scale = value; + } + public resetScale() { + this._scale = undefined; + } + // Temporarily expose input value. Use with caution. + public get scaleInput() { + return this._scale; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition { /** - * The aggregation method. + * A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_columns Dashboard#legend_columns} */ - readonly aggregation: string; + readonly legendColumns?: string[]; /** - * The facet name. + * The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_layout Dashboard#legend_layout} */ - readonly facet?: string; + readonly legendLayout?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The size of the legend displayed in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_size Dashboard#legend_size} */ - readonly order: string; -} - -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - + readonly legendSize?: string; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; - } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy { + readonly liveSpan?: string; /** - * The facet name. + * Whether or not to show the legend on this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_legend Dashboard#show_legend} */ - readonly facet?: string; + readonly showLegend?: boolean | cdktf.IResolvable; /** - * The maximum number of items in the group. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly limit?: number; + readonly title?: string; /** - * sort_query block + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery; + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable; + /** + * event block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event Dashboard#event} + */ + readonly event?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable; + /** + * marker block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#marker Dashboard#marker} + */ + readonly marker?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable; + /** + * right_yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#right_yaxis Dashboard#right_yaxis} + */ + readonly rightYaxis?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis; + /** + * yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + */ + readonly yaxis?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + legend_columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.legendColumns), + legend_layout: cdktf.stringToTerraform(struct!.legendLayout), + legend_size: cdktf.stringToTerraform(struct!.legendSize), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + show_legend: cdktf.booleanToTerraform(struct!.showLegend), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkToTerraform, true)(struct!.customLink), + event: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventToTerraform, true)(struct!.event), + marker: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerToTerraform, true)(struct!.marker), + request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestToTerraform, true)(struct!.request), + right_yaxis: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisToTerraform(struct!.rightYaxis), + yaxis: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisToTerraform(struct!.yaxis), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._legendColumns !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.legendColumns = this._legendColumns; } - if (this._limit !== undefined) { + if (this._legendLayout !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.legendLayout = this._legendLayout; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._legendSize !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.legendSize = this._legendSize; + } + if (this._liveSpan !== undefined) { + hasAnyValues = true; + internalValueResult.liveSpan = this._liveSpan; + } + if (this._showLegend !== undefined) { + hasAnyValues = true; + internalValueResult.showLegend = this._showLegend; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._event?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.event = this._event?.internalValue; + } + if (this._marker?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.marker = this._marker?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } + if (this._rightYaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rightYaxis = this._rightYaxis?.internalValue; + } + if (this._yaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.yaxis = this._yaxis?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._legendColumns = undefined; + this._legendLayout = undefined; + this._legendSize = undefined; + this._liveSpan = undefined; + this._showLegend = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._event.internalValue = undefined; + this._marker.internalValue = undefined; + this._request.internalValue = undefined; + this._rightYaxis.internalValue = undefined; + this._yaxis.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._legendColumns = value.legendColumns; + this._legendLayout = value.legendLayout; + this._legendSize = value.legendSize; + this._liveSpan = value.liveSpan; + this._showLegend = value.showLegend; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._event.internalValue = value.event; + this._marker.internalValue = value.marker; + this._request.internalValue = value.request; + this._rightYaxis.internalValue = value.rightYaxis; + this._yaxis.internalValue = value.yaxis; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // legend_columns - computed: false, optional: true, required: false + private _legendColumns?: string[]; + public get legendColumns() { + return cdktf.Fn.tolist(this.getListAttribute('legend_columns')); } - public set facet(value: string) { - this._facet = value; + public set legendColumns(value: string[]) { + this._legendColumns = value; } - public resetFacet() { - this._facet = undefined; + public resetLegendColumns() { + this._legendColumns = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get legendColumnsInput() { + return this._legendColumns; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // legend_layout - computed: false, optional: true, required: false + private _legendLayout?: string; + public get legendLayout() { + return this.getStringAttribute('legend_layout'); } - public set limit(value: number) { - this._limit = value; + public set legendLayout(value: string) { + this._legendLayout = value; } - public resetLimit() { - this._limit = undefined; + public resetLegendLayout() { + this._legendLayout = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get legendLayoutInput() { + return this._legendLayout; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // legend_size - computed: false, optional: true, required: false + private _legendSize?: string; + public get legendSize() { + return this.getStringAttribute('legend_size'); } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set legendSize(value: string) { + this._legendSize = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetLegendSize() { + this._legendSize = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get legendSizeInput() { + return this._legendSize; } -} -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); + } + public set liveSpan(value: string) { + this._liveSpan = value; + } + public resetLiveSpan() { + this._liveSpan = undefined; + } + // Temporarily expose input value. Use with caution. + public get liveSpanInput() { + return this._liveSpan; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // show_legend - computed: false, optional: true, required: false + private _showLegend?: boolean | cdktf.IResolvable; + public get showLegend() { + return this.getBooleanAttribute('show_legend'); + } + public set showLegend(value: boolean | cdktf.IResolvable) { + this._showLegend = value; + } + public resetShowLegend() { + this._showLegend = undefined; + } + // Temporarily expose input value. Use with caution. + public get showLegendInput() { + return this._showLegend; } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Define the time interval in seconds. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} - */ - readonly interval?: number; -} -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; } -} -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } + // event - computed: false, optional: true, required: false + private _event = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEventList(this, "event", false); + public get event() { + return this._event; + } + public putEvent(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable) { + this._event.internalValue = value; + } + public resetEvent() { + this._event.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get eventInput() { + return this._event.internalValue; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // marker - computed: false, optional: true, required: false + private _marker = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarkerList(this, "marker", false); + public get marker() { + return this._marker; } - public set aggregation(value: string) { - this._aggregation = value; + public putMarker(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable) { + this._marker.internalValue = value; + } + public resetMarker() { + this._marker.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get markerInput() { + return this._marker.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequestList(this, "request", false); + public get request() { + return this._request; } - public set facet(value: string) { - this._facet = value; + public putRequest(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetRequest() { + this._request.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get requestInput() { + return this._request.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // right_yaxis - computed: false, optional: true, required: false + private _rightYaxis = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxisOutputReference(this, "right_yaxis"); + public get rightYaxis() { + return this._rightYaxis; } - public set interval(value: number) { - this._interval = value; + public putRightYaxis(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionRightYaxis) { + this._rightYaxis.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetRightYaxis() { + this._rightYaxis.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get rightYaxisInput() { + return this._rightYaxis.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // yaxis - computed: false, optional: true, required: false + private _yaxis = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxisOutputReference(this, "yaxis"); + public get yaxis() { + return this._yaxis; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putYaxis(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionYaxis) { + this._yaxis.internalValue = value; + } + public resetYaxis() { + this._yaxis.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get yaxisInput() { + return this._yaxis.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink { /** - * The search query to use. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly searchQuery?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * compute_query block + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery; + readonly label?: string; /** - * group_by block + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly link?: string; /** - * multi_compute block + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly overrideLabel?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.isHidden = this._isHidden; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.label = this._label; } - if (this._groupBy?.internalValue !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.link = this._link; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._overrideLabel !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set index(value: string) { - this._index = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get isHiddenInput() { + return this._isHidden; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set label(value: string) { + this._label = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get labelInput() { + return this._label; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set link(value: string) { + this._link = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get linkInput() { + return this._link; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get overrideLabelInput() { + return this._overrideLabel; } +} - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery { /** * The aggregation method. * @@ -11692,7 +11413,7 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAud readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11704,7 +11425,7 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAudi } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11715,7 +11436,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -11733,7 +11454,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -11793,7 +11514,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery { /** * The aggregation method. * @@ -11814,7 +11535,7 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAud readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11826,7 +11547,7 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAudi } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11837,7 +11558,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -11855,7 +11576,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -11912,7 +11633,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy { /** * The facet name. * @@ -11930,10 +11651,10 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAud * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11941,11 +11662,11 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAudi return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -11959,7 +11680,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -11980,7 +11701,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -12034,11 +11755,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -12050,8 +11771,8 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -12065,11 +11786,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute { /** * The aggregation method. * @@ -12090,7 +11811,7 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAud readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12102,7 +11823,7 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAudi } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -12112,695 +11833,572 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQu * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; - /** - * compute_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} - */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery; - /** - * group_by block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; - /** - * multi_compute block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} - */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; -} - -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), - } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set index(value: string) { - this._index = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aggregationInput() { + return this._aggregation; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set facet(value: string) { + this._facet = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get facetInput() { + return this._facet; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get intervalInput() { + return this._interval; } +} - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; - } - public resetGroupBy() { - this._groupBy.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; - } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats { /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly customFgColor?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + * @param index the index of the item to return */ - readonly hideValue?: boolean | cdktf.IResolvable; + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery { /** - * Displays an image as the background. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly imageUrl?: string; + readonly index: string; /** - * The metric from the request to correlate with this conditional format. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly metric?: string; + readonly searchQuery?: string; /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly palette: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery; /** - * Defines the displayed timeframe. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly timeframe?: string; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; /** - * A value for the comparator. + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly value: number; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; + internalValueResult.index = this._index; } - if (this._metric !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.searchQuery = this._searchQuery; } - if (this._palette !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._timeframe !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._value !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set comparator(value: string) { - this._comparator = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; + public get indexInput() { + return this._index; } - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set customBgColor(value: string) { - this._customBgColor = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetCustomBgColor() { - this._customBgColor = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; + public get searchQueryInput() { + return this._searchQuery; } - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set customFgColor(value: string) { - this._customFgColor = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetCustomFgColor() { - this._customFgColor = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetHideValue() { - this._hideValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set imageUrl(value: string) { - this._imageUrl = value; + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetImageUrl() { - this._imageUrl = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get multiComputeInput() { + return this._multiCompute.internalValue; } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } +} - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); - } - public set palette(value: string) { - this._palette = value; +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } } - public set timeframe(value: string) { - this._timeframe = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetTimeframe() { - this._timeframe = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + public get aggregationInput() { + return this._aggregation; } - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set value(value: number) { - this._value = value; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get facetInput() { + return this._facet; } -} -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery { /** - * The color palette to apply to the foreground, same values available as palette. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly customFgColor?: string; + readonly aggregation: string; /** - * Setting this to True hides values. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly hideValue?: boolean | cdktf.IResolvable; + readonly facet?: string; /** - * Displays an image as the background. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly imageUrl?: string; + readonly order: string; +} + +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing */ - readonly metric?: string; + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy { /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly palette: string; + readonly facet?: string; /** - * Defines the displayed timeframe. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly timeframe?: string; + readonly limit?: number; /** - * A value for the comparator. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly value: number; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -12813,65 +12411,35 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; } - if (this._palette !== undefined) { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.facet = this._facet; } - if (this._timeframe !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.limit = this._limit; } - if (this._value !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -12880,156 +12448,63 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); - } - public set customBgColor(value: string) { - this._customBgColor = value; - } - public resetCustomBgColor() { - this._customBgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; - } - - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); - } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); - } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; - } - public resetHideValue() { - this._hideValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; - } - - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set imageUrl(value: string) { - this._imageUrl = value; + public set facet(value: string) { + this._facet = value; } - public resetImageUrl() { - this._imageUrl = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get facetInput() { + return this._facet; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + public set limit(value: number) { + this._limit = value; } - public set palette(value: string) { - this._palette = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get limitInput() { + return this._limit; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; - } - public resetTimeframe() { - this._timeframe = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public set value(value: number) { - this._value = value; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -13043,593 +12518,742 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute { /** - * The number of results to return + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly count?: number; + readonly aggregation: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly order?: string; + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.aggregation = this._aggregation; } - if (this._order !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; - this._order = value.order; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set count(value: number) { - this._count = value; + public set aggregation(value: string) { + this._aggregation = value; } - public resetCount() { - this._count = undefined; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set order(value: string) { - this._order = value; + public set interval(value: number) { + this._interval = value; } - public resetOrder() { - this._order = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula { + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable + /** - * An expression alias. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly alias?: string; + readonly index: string; /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly cellDisplayMode?: string; + readonly searchQuery?: string; /** - * A string expression built from queries, formulas, and functions. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly formulaExpression: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery; /** - * conditional_formats block + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; /** - * limit block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly limit?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitToTerraform(struct!.limit), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.alias = this._alias; + internalValueResult.index = this._index; } - if (this._cellDisplayMode !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.searchQuery = this._searchQuery; } - if (this._formulaExpression !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._limit?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetAlias() { - this._alias = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get indexInput() { + return this._index; } - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get searchQueryInput() { + return this._searchQuery; } - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putLimit(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly comparator: string; /** - * @param index the index of the item to return + * The color palette to apply to the background, same values available as palette. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery { + readonly customBgColor?: string; /** - * The aggregation method. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly aggregation: string; + readonly customFgColor?: string; /** - * The facet name. + * Setting this to True hides values. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly facet?: string; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * Define the time interval in seconds. + * Displays an image as the background. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} */ - readonly interval?: number; + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.comparator = this._comparator; } - if (this._facet !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.customBgColor = this._customBgColor; } - if (this._interval !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get comparatorInput() { + return this._comparator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); + } + public set customBgColor(value: string) { + this._customBgColor = value; + } + public resetCustomBgColor() { + this._customBgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customBgColorInput() { + return this._customBgColor; + } + + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); + } + public set customFgColor(value: string) { + this._customFgColor = value; + } + public resetCustomFgColor() { + this._customFgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customFgColorInput() { + return this._customFgColor; + } + + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public set facet(value: string) { - this._facet = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } - public resetFacet() { - this._facet = undefined; + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get hideValueInput() { + return this._hideValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); } - public set interval(value: number) { - this._interval = value; + public set imageUrl(value: string) { + this._imageUrl = value; } - public resetInterval() { - this._interval = undefined; + public resetImageUrl() { + this._imageUrl = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get imageUrlInput() { + return this._imageUrl; } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public set metric(value: string) { + this._metric = value; } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + public resetMetric() { + this._metric = undefined; } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public set aggregation(value: string) { - this._aggregation = value; + public set palette(value: string) { + this._palette = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get paletteInput() { + return this._palette; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); } - public set facet(value: string) { - this._facet = value; + public set timeframe(value: string) { + this._timeframe = value; } - public resetFacet() { - this._facet = undefined; + public resetTimeframe() { + this._timeframe = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get timeframeInput() { + return this._timeframe; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); } - public set order(value: string) { - this._order = value; + public set value(value: number) { + this._value = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get valueInput() { + return this._value; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy { + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats[] | cdktf.IResolvable + /** - * The facet name. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats { + /** + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly facet?: string; + readonly comparator: string; /** - * The maximum number of items in the group. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly limit?: number; + readonly customBgColor?: string; /** - * sort_query block + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery; + readonly customFgColor?: string; + /** + * Setting this to True hides values. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + */ + readonly hideValue?: boolean | cdktf.IResolvable; + /** + * Displays an image as the background. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + */ + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -13643,34 +13267,64 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuer super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.comparator = this._comparator; } - if (this._limit !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.customBgColor = this._customBgColor; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -13679,63 +13333,156 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuer else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set facet(value: string) { - this._facet = value; + public set comparator(value: string) { + this._comparator = value; } - public resetFacet() { - this._facet = undefined; + // Temporarily expose input value. Use with caution. + public get comparatorInput() { + return this._comparator; + } + + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); + } + public set customBgColor(value: string) { + this._customBgColor = value; + } + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get customBgColorInput() { + return this._customBgColor; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set limit(value: number) { - this._limit = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - public resetLimit() { - this._limit = undefined; + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get customFgColorInput() { + return this._customFgColor; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get hideValueInput() { + return this._hideValue; + } + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } + + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); + } + public set timeframe(value: string) { + this._timeframe = value; + } + public resetTimeframe() { + this._timeframe = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -13749,385 +13496,352 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuer /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit { /** - * The facet name. + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly facet?: string; + readonly count?: number; /** - * Define the time interval in seconds. + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + count: cdktf.numberToTerraform(struct!.count), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * @param terraformAttribute The attribute on the parent resource this class is referencing */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.count = this._count; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._count = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._count = value.count; + this._order = value.order; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set facet(value: string) { - this._facet = value; + public set count(value: number) { + this._count = value; } - public resetFacet() { - this._facet = undefined; + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get countInput() { + return this._count; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set interval(value: number) { - this._interval = value; + public set order(value: string) { + this._order = value; } - public resetInterval() { - this._interval = undefined; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula { /** - * The name of the index to query. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly index: string; + readonly alias?: string; /** - * The search query to use. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly searchQuery?: string; + readonly cellDisplayMode?: string; /** - * compute_query block + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery; + readonly formulaExpression: string; /** - * group_by block + * conditional_formats block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; /** - * multi_compute block + * limit block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly limit?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.alias = this._alias; } - if (this._searchQuery !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.formulaExpression = this._formulaExpression; } - if (this._groupBy?.internalValue !== undefined) { + if (this._conditionalFormats?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._limit?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set index(value: string) { - this._index = value; + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aliasInput() { + return this._alias; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set formulaExpression(value: string) { + this._formulaExpression = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get formulaExpressionInput() { + return this._formulaExpression; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putLimit(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetLimit() { + this._limit.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get limitInput() { + return this._limit.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery { + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula[] | cdktf.IResolvable + /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly filterBy?: string[]; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The max number of items in the filter list. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery { + /** + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly limit?: number; + readonly aggregation: string; /** - * Your chosen metric. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly metric: string; + readonly facet?: string; /** - * Your chosen search term. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly searchBy?: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14138,189 +13852,118 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcess super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } - if (this._metric !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.facet = this._facet; } - if (this._searchBy !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; - } - public resetFilterBy() { - this._filterBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName: string; - /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} - */ - readonly primaryTagName?: string; - /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} - */ - readonly primaryTagValue?: string; + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly stat: string; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14331,721 +13974,613 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryAp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.aggregation = this._aggregation; } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._stat !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set env(value: string) { - this._env = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get aggregationInput() { + return this._aggregation; } - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + public set facet(value: string) { + this._facet = value; } - public resetIsUpstream() { - this._isUpstream = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get facetInput() { + return this._facet; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set name(value: string) { - this._name = value; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get orderInput() { + return this._order; } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery; +} - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public set operationName(value: string) { - this._operationName = value; + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } - // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; +} + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); - } - public set primaryTagName(value: string) { - this._primaryTagName = value; - } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set facet(value: string) { + this._facet = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get facetInput() { + return this._facet; } - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + public set limit(value: number) { + this._limit = value; } - public set service(value: string) { - this._service = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get limitInput() { + return this._limit; } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set stat(value: string) { - this._stat = value; + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Array of fields to group results by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: string[]; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName?: string; + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable + /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly primaryTagName?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * @param index the index of the item to return */ - readonly primaryTagValue?: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName?: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly stat: string; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._groupBy !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; } - if (this._resourceName !== undefined) { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.aggregation = this._aggregation; } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._stat !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); - } - public set groupBy(value: string[]) { - this._groupBy = value; - } - public resetGroupBy() { - this._groupBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetOperationName() { - this._operationName = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get aggregationInput() { + return this._aggregation; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set facet(value: string) { + this._facet = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get facetInput() { + return this._facet; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set interval(value: number) { + this._interval = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get intervalInput() { + return this._interval; } +} - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - public resetResourceName() { - this._resourceName = undefined; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; - } +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; - } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * A time interval in milliseconds. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly interval?: number; + readonly searchQuery?: string; /** - * The measurable attribute to compute. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly metric?: string; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._interval !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.searchQuery = this._searchQuery; } - if (this._metric !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; - this._metric = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; - this._metric = value.metric; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set interval(value: number) { - this._interval = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetInterval() { - this._interval = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get searchQueryInput() { + return this._searchQuery; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set metric(value: string) { - this._metric = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetMetric() { - this._metric = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get computeQueryInput() { + return this._computeQuery.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery { /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly aggregation: string; + readonly filterBy?: string[]; /** - * The metric used for sorting group by results. + * The max number of items in the filter list. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * Your chosen metric. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric?: string; + readonly metric: string; /** - * Direction of sort. Valid values are `asc`, `desc`. + * Your chosen search term. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} */ - readonly order?: string; + readonly searchBy?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15056,53 +14591,78 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEv super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.filterBy = this._filterBy; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._order !== undefined) { + if (this._searchBy !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; + this._filterBy = undefined; + this._limit = undefined; this._metric = undefined; - this._order = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; + this._filterBy = value.filterBy; + this._limit = value.limit; this._metric = value.metric; - this._order = value.order; + this._searchBy = value.searchBy; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); + } + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get filterByInput() { + return this._filterBy; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get limitInput() { + return this._limit; } - // metric - computed: false, optional: true, required: false + // metric - computed: false, optional: false, required: true private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -15110,261 +14670,353 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEv public set metric(value: string) { this._metric = value; } - public resetMetric() { - this._metric = undefined; - } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); } - public set order(value: string) { - this._order = value; + public set searchBy(value: string) { + this._searchBy = value; } - public resetOrder() { - this._order = undefined; + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery { /** - * The event facet. + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet: string; + readonly dataSource: string; /** - * The number of groups to return. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly limit?: number; + readonly env: string; /** - * sort block + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly sort?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort; + readonly isUpstream?: boolean | cdktf.IResolvable; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Name of operation on service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + */ + readonly operationName: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._sort?.internalValue !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sort.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sort.internalValue = value.sort; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; + } + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); + } + public set env(value: string) { + this._env = value; + } + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); + } + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; + } + public resetIsUpstream() { + this._isUpstream = undefined; + } + // Temporarily expose input value. Use with caution. + public get isUpstreamInput() { + return this._isUpstream; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public set facet(value: string) { - this._facet = value; + public set operationName(value: string) { + this._operationName = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get operationNameInput() { + return this._operationName; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public set limit(value: number) { - this._limit = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetLimit() { - this._limit = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get primaryTagNameInput() { + return this._primaryTagName; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public putSort(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; - } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + public get primaryTagValueInput() { + return this._primaryTagValue; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch { - /** - * The events search string. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query: string; -} - -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + public set resourceName(value: string) { + this._resourceName = value; } - return { - query: cdktf.stringToTerraform(struct!.query), + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._query !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query; - } - return hasAnyValues ? internalValueResult : undefined; + public set service(value: string) { + this._service = value; } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._query = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; - } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); } - public set query(value: string) { - this._query = value; + public set stat(value: string) { + this._stat = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get statInput() { + return this._stat; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery { /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ readonly dataSource: string; /** - * An array of index names to query in the stream. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly indexes?: string[]; + readonly env: string; + /** + * Array of fields to group results by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: string[]; /** * The name of query for use in formulas. * @@ -15372,41 +15024,63 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQue */ readonly name: string; /** - * compute block + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly compute: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly operationName?: string; /** - * group_by block + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly primaryTagName?: string; /** - * search block + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly search?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch; + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15417,54 +15091,78 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEv super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._indexes !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.env = this._env; + } + if (this._groupBy !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._compute?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.operationName = this._operationName; } - if (this._groupBy?.internalValue !== undefined) { + if (this._primaryTagName !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.primaryTagName = this._primaryTagName; } - if (this._search?.internalValue !== undefined) { + if (this._primaryTagValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._dataSource = undefined; - this._indexes = undefined; + this._env = undefined; + this._groupBy = undefined; this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dataSource = value.dataSource; - this._indexes = value.indexes; + this._env = value.env; + this._groupBy = value.groupBy; this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } @@ -15481,20 +15179,33 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEv return this._dataSource; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public set indexes(value: string[]) { - this._indexes = value; + public set env(value: string) { + this._env = value; } - public resetIndexes() { - this._indexes = undefined; + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get groupByInput() { + return this._groupBy; } // name - computed: false, optional: false, required: true @@ -15510,275 +15221,284 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEv return this._name; } - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public putCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get operationNameInput() { + return this._operationName; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get primaryTagNameInput() { + return this._primaryTagName; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public putSearch(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute { /** - * The data source for metrics queries. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly dataSource?: string; + readonly aggregation: string; /** - * The name of the query for use in formulas. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly name: string; + readonly interval?: number; /** - * The metrics query definition. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly query: string; + readonly metric?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.aggregation = this._aggregation; } - if (this._name !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.interval = this._interval; } - if (this._query !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.metric = this._metric; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; + this._metric = undefined; } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; + this._metric = value.metric; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetDataSource() { - this._dataSource = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get aggregationInput() { + return this._aggregation; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set name(value: string) { - this._name = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get intervalInput() { + return this._interval; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set query(value: string) { - this._query = value; + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get metricInput() { + return this._metric; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly dataSource: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + * @param index the index of the item to return */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort { /** - * The number of hits to return. + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly limit?: number; + readonly aggregation: string; /** - * The process metric name. + * The metric used for sorting group by results. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric: string; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * The direction of the sort. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} - */ - readonly sort?: string; - /** - * An array of tags to filter by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} - */ - readonly tagFilters?: string[]; + readonly metric?: string; /** - * The text to use as a filter. + * Direction of sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly textFilter?: string; + readonly order?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), + aggregation: cdktf.stringToTerraform(struct!.aggregation), metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15789,137 +15509,53 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryPr super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { - hasAnyValues = true; - internalValueResult.sort = this._sort; - } - if (this._tagFilters !== undefined) { - hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; - } - if (this._textFilter !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; + this._aggregation = undefined; this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; + this._aggregation = value.aggregation; this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._order = value.order; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; - } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; - } - // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLimit() { - this._limit = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get aggregationInput() { + return this._aggregation; } - // metric - computed: false, optional: false, required: true + // metric - computed: false, optional: true, required: false private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -15927,120 +15563,64 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryPr public set metric(value: string) { this._metric = value; } + public resetMetric() { + this._metric = undefined; + } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); - } - public set sort(value: string) { - this._sort = value; - } - public resetSort() { - this._sort = undefined; - } - // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; - } - - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); - } - public set tagFilters(value: string[]) { - this._tagFilters = value; - } - public resetTagFilters() { - this._tagFilters = undefined; - } - // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; - } - - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set textFilter(value: string) { - this._textFilter = value; + public set order(value: string) { + this._order = value; } - public resetTextFilter() { - this._textFilter = undefined; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery; - /** - * apm_resource_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} - */ - readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy { /** - * event_query block + * The event facet. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery; + readonly facet: string; /** - * metric_query block + * The number of groups to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery; + readonly limit?: number; /** - * process_query block + * sort block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery; + readonly sort?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -16054,44 +15634,34 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; - } - if (this._eventQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._processQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -16100,98 +15670,61 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOu else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; - } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; - } - - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; - } - public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; - } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; - } - - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; - } - public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public set facet(value: string) { + this._facet = value; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get facetInput() { + return this._facet; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get limitInput() { + return this._limit; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public putSort(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery[] | cdktf.IResolvable - +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable + /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing @@ -16204,44 +15737,30 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryLi /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch { /** - * Define the time interval in seconds. + * The events search string. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16252,118 +15771,102 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public resetInterval() { - this._interval = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery { /** - * The aggregation method. + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregation: string; + readonly dataSource: string; /** - * The facet name. + * An array of index names to query in the stream. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - readonly facet?: string; + readonly indexes?: string[]; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly order: string; + readonly name: string; + /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** + * compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + */ + readonly compute: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16374,573 +15877,820 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._facet !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.indexes = this._indexes; } - if (this._order !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; + } + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); + } + public set indexes(value: string[]) { + this._indexes = value; + } + public resetIndexes() { + this._indexes = undefined; + } + // Temporarily expose input value. Use with caution. + public get indexesInput() { + return this._indexes; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; } - public set aggregation(value: string) { - this._aggregation = value; + public putCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get computeInput() { + return this._compute.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set facet(value: string) { - this._facet = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get groupByInput() { + return this._groupBy.internalValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; } - public set order(value: string) { - this._order = value; + public putSearch(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; + } + public resetSearch() { + this._search.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get searchInput() { + return this._search.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery { /** - * The facet name. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly facet?: string; + readonly aggregator?: string; /** - * The maximum number of items in the group. + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly limit?: number; + readonly dataSource?: string; /** - * sort_query block + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery; + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.aggregator = this._aggregator; } - if (this._limit !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.dataSource = this._dataSource; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set facet(value: string) { - this._facet = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetFacet() { - this._facet = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get aggregatorInput() { + return this._aggregator; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set limit(value: number) { - this._limit = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetLimit() { - this._limit = undefined; + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get dataSourceInput() { + return this._dataSource; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get queryInput() { + return this._query; } } - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly aggregator?: string; /** - * @param index the index of the item to return + * The data source for process queries. Valid values are `process`, `container`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + */ + readonly dataSource: string; + /** + * Whether to normalize the CPU percentages. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + */ + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + /** + * The number of hits to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * The process metric name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute { + readonly name: string; /** - * The aggregation method. + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly aggregation: string; + readonly sort?: string; /** - * The facet name. + * An array of tags to filter by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} */ - readonly facet?: string; + readonly tagFilters?: string[]; /** - * Define the time interval in seconds. + * The text to use as a filter. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} */ - readonly interval?: number; + readonly textFilter?: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._interval !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetFacet() { - this._facet = undefined; + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); + } + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; + } + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); + } + public set sort(value: string) { + this._sort = value; + } + public resetSort() { + this._sort = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortInput() { + return this._sort; + } + + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); + } + public set tagFilters(value: string[]) { + this._tagFilters = value; + } + public resetTagFilters() { + this._tagFilters = undefined; + } + // Temporarily expose input value. Use with caution. + public get tagFiltersInput() { + return this._tagFilters; + } + + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public set textFilter(value: string) { + this._textFilter = value; } -} - -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + public resetTextFilter() { + this._textFilter = undefined; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // Temporarily expose input value. Use with caution. + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery { /** - * The name of the index to query. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly index: string; + readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery; /** - * The search query to use. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly searchQuery?: string; + readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery; /** - * compute_query block + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery; + readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery; /** - * group_by block + * metric_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery; /** - * multi_compute block + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._searchQuery !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.eventQuery = this._eventQuery?.internalValue; } - if (this._groupBy?.internalValue !== undefined) { + if (this._metricQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.metricQuery = this._metricQuery?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set index(value: string) { - this._index = value; + public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; + } + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public set searchQuery(value: string) { - this._searchQuery = value; + public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get eventQueryInput() { + return this._eventQuery.internalValue; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get metricQueryInput() { + return this._metricQuery.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get processQueryInput() { + return this._processQuery.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery { + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery { /** * The aggregation method. * @@ -16961,7 +16711,7 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSec readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16973,7 +16723,7 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecu } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16984,7 +16734,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -17002,7 +16752,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -17062,7 +16812,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery { /** * The aggregation method. * @@ -17083,7 +16833,7 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSec readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17095,7 +16845,7 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecu } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17106,7 +16856,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -17124,7 +16874,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -17181,7 +16931,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy { /** * The facet name. * @@ -17199,10 +16949,10 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSec * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17210,11 +16960,11 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecu return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17228,7 +16978,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -17249,7 +16999,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -17303,11 +17053,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -17319,8 +17069,8 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17334,11 +17084,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute { /** * The aggregation method. * @@ -17359,7 +17109,7 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSec readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17371,7 +17121,7 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecu } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17385,7 +17135,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -17406,7 +17156,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -17473,8 +17223,8 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17488,11 +17238,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery { /** * The name of the index to query. * @@ -17510,22 +17260,22 @@ export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSec * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17533,13 +17283,13 @@ export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecu return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17550,7 +17300,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -17576,7 +17326,7 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -17625,11 +17375,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -17641,11 +17391,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -17657,11 +17407,11 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -17672,26 +17422,40 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurit return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery { /** - * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly palette?: string; + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - palette: cdktf.stringToTerraform(struct!.palette), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17702,415 +17466,343 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._palette !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._palette = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._palette = value.palette; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // palette - computed: false, optional: true, required: false - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set palette(value: string) { - this._palette = value; + public set aggregation(value: string) { + this._aggregation = value; } - public resetPalette() { - this._palette = undefined; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest { - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery; - /** - * audit_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} - */ - readonly auditQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery; - /** - * conditional_formats block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} - */ - readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats[] | cdktf.IResolvable; - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula[] | cdktf.IResolvable; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery; - /** - * query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery[] | cdktf.IResolvable; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery { /** - * rum_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly rumQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery; + readonly aggregation: string; /** - * security_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly securityQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery; + readonly facet?: string; /** - * style block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly style?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle; + readonly order: string; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - audit_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), - conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), - style: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleToTerraform(struct!.style), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._auditQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.auditQuery = this._auditQuery?.internalValue; - } - if (this._conditionalFormats?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; - } - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._query?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; - } - if (this._rumQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._style?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.style = this._style?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._auditQuery.internalValue = undefined; - this._conditionalFormats.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - this._style.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._auditQuery.internalValue = value.auditQuery; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; - this._style.internalValue = value.style; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // audit_query - computed: false, optional: true, required: false - private _auditQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryOutputReference(this, "audit_query"); - public get auditQuery() { - return this._auditQuery; - } - public putAuditQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery) { - this._auditQuery.internalValue = value; - } - public resetAuditQuery() { - this._auditQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get auditQueryInput() { - return this._auditQuery.internalValue; - } - - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; - } - public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get aggregationInput() { + return this._aggregation; } - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putFormula(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetFormula() { - this._formula.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; + public get facetInput() { + return this._facet; } - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetLogQuery() { - this._logQuery.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; + public get orderInput() { + return this._order; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery; +} + +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } +} - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; - } - public putQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public resetQuery() { - this._query.internalValue = undefined; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putRumQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get facetInput() { + return this._facet; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putSecurityQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get limitInput() { + return this._limit; } - // style - computed: false, optional: true, required: false - private _style = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOutputReference(this, "style"); - public get style() { - return this._style; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putStyle(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle) { - this._style.internalValue = value; + public putSortQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetStyle() { - this._style.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get styleInput() { - return this._style.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -18124,583 +17816,501 @@ export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestList ex /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestOutputReference { - return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetToplistDefinition { - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute { /** - * The size of the widget's title (defaults to 16). + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly titleSize?: string; + readonly aggregation: string; /** - * custom_link block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly customLink?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable; + readonly facet?: string; /** - * request block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly request?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest[] | cdktf.IResolvable; + readonly interval?: number; } -export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinition): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - live_span: cdktf.stringToTerraform(struct!.liveSpan), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkToTerraform, true)(struct!.customLink), - request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestToTerraform, true)(struct!.request), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinition | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.aggregation = this._aggregation; } - if (this._customLink?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; + internalValueResult.facet = this._facet; } - if (this._request?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinition | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._liveSpan = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._request.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._liveSpan = value.liveSpan; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._request.internalValue = value.request; + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLiveSpan() { - this._liveSpan = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; + public get aggregationInput() { + return this._aggregation; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set title(value: string) { - this._title = value; + public set facet(value: string) { + this._facet = value; } - public resetTitle() { - this._title = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get facetInput() { + return this._facet; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set titleAlign(value: string) { - this._titleAlign = value; + public set interval(value: number) { + this._interval = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get intervalInput() { + return this._interval; } +} - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; - } - public resetTitleSize() { - this._titleSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; - } +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; - } - public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; - } - public resetCustomLink() { - this._customLink.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestList(this, "request", false); - public get request() { - return this._request; - } - public putRequest(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; - } - public resetRequest() { - this._request.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink { +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery { /** - * The flag for toggling context menu link visibility. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly index: string; /** - * The label for the custom link URL. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly label?: string; + readonly searchQuery?: string; /** - * The URL of the custom link. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly link?: string; + readonly computeQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly overrideLabel?: string; + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.index = this._index; } - if (this._label !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.searchQuery = this._searchQuery; } - if (this._link !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._overrideLabel !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); - } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetIsHidden() { - this._isHidden = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get indexInput() { + return this._index; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set label(value: string) { - this._label = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLabel() { - this._label = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get searchQueryInput() { + return this._searchQuery; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set link(value: string) { - this._link = value; + public putComputeQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetLink() { - this._link = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get groupByInput() { + return this._groupBy.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putMultiCompute(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery { - /** - * The data source for the Topology request ('service_map' or 'data_streams'). Valid values are `data_streams`, `service_map`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * Your environment and primary tag (or `*` if enabled for your account). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filters Dashboard#filters} - */ - readonly filters: string[]; +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle { /** - * The ID of the service to map. + * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} */ - readonly service: string; + readonly palette?: string; } -export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filters), - service: cdktf.stringToTerraform(struct!.service), + palette: cdktf.stringToTerraform(struct!.palette), } } -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._filters !== undefined) { - hasAnyValues = true; - internalValueResult.filters = this._filters; - } - if (this._service !== undefined) { + if (this._palette !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.palette = this._palette; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._dataSource = undefined; - this._filters = undefined; - this._service = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._palette = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._dataSource = value.dataSource; - this._filters = value.filters; - this._service = value.service; + this._palette = value.palette; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // filters - computed: false, optional: false, required: true - private _filters?: string[]; - public get filters() { - return this.getListAttribute('filters'); - } - public set filters(value: string[]) { - this._filters = value; - } - // Temporarily expose input value. Use with caution. - public get filtersInput() { - return this._filters; + // palette - computed: false, optional: true, required: false + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + public set palette(value: string) { + this._palette = value; } - public set service(value: string) { - this._service = value; + public resetPalette() { + this._palette = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get paletteInput() { + return this._palette; } } - -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The metric query to use for this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly q?: string; /** - * @param index the index of the item to return + * apm_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest { + readonly apmQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery; + /** + * audit_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} + */ + readonly auditQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats[] | cdktf.IResolvable; + /** + * formula block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} + */ + readonly formula?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula[] | cdktf.IResolvable; + /** + * log_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} + */ + readonly logQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery[] | cdktf.IResolvable; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery; /** - * The request type for the Topology request ('topology'). Valid values are `topology`. + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request_type Dashboard#request_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly requestType: string; + readonly securityQuery?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery; /** - * query block + * style block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} */ - readonly query: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery[] | cdktf.IResolvable; + readonly style?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle; } -export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - request_type: cdktf.stringToTerraform(struct!.requestType), - query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryToTerraform, true)(struct!.query), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + audit_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), + conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), + style: dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleToTerraform(struct!.style), } } -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -18714,29 +18324,74 @@ export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._requestType !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.requestType = this._requestType; + internalValueResult.q = this._q; + } + if (this._apmQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.apmQuery = this._apmQuery?.internalValue; + } + if (this._auditQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.auditQuery = this._auditQuery?.internalValue; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._formula?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.formula = this._formula?.internalValue; + } + if (this._logQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; } if (this._query?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.query = this._query?.internalValue; } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; + } + if (this._style?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.style = this._style?.internalValue; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._requestType = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._auditQuery.internalValue = undefined; + this._conditionalFormats.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + this._style.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -18745,253 +18400,217 @@ export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOut else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._requestType = value.requestType; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._auditQuery.internalValue = value.auditQuery; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; + this._style.internalValue = value.style; } } - // request_type - computed: false, optional: false, required: true - private _requestType?: string; - public get requestType() { - return this.getStringAttribute('request_type'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set requestType(value: string) { - this._requestType = value; + public set q(value: string) { + this._q = value; + } + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get requestTypeInput() { - return this._requestType; + public get qInput() { + return this._q; } - // query - computed: false, optional: false, required: true - private _query = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public putQuery(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; + public putApmQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; + } + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; + public get apmQueryInput() { + return this._apmQuery.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // audit_query - computed: false, optional: true, required: false + private _auditQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQueryOutputReference(this, "audit_query"); + public get auditQuery() { + return this._auditQuery; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putAuditQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestAuditQuery) { + this._auditQuery.internalValue = value; } -} -export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition { - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; - /** - * The size of the widget's title (defaults to 16). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} - */ - readonly titleSize?: string; - /** - * custom_link block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} - */ - readonly customLink?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink[] | cdktf.IResolvable; - /** - * request block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} - */ - readonly request?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest[] | cdktf.IResolvable; -} - -export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + public resetAuditQuery() { + this._auditQuery.internalValue = undefined; } - return { - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkToTerraform, true)(struct!.customLink), - request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestToTerraform, true)(struct!.request), + // Temporarily expose input value. Use with caution. + public get auditQueryInput() { + return this._auditQuery.internalValue; } -} - -export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; + } + public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; + } + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; - } - if (this._request?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; + } + public putFormula(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; + } + public resetFormula() { + this._formula.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get formulaInput() { + return this._formula.internalValue; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._request.internalValue = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._request.internalValue = value.request; - } + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; + } + public putLogQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get logQueryInput() { + return this._logQuery.internalValue; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public set title(value: string) { - this._title = value; + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; } - public resetTitle() { - this._title = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get processQueryInput() { + return this._processQuery.internalValue; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public set titleAlign(value: string) { - this._titleAlign = value; + public putQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get queryInput() { + return this._query.internalValue; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public set titleSize(value: string) { - this._titleSize = value; + public putRumQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; } - public resetTitleSize() { - this._titleSize = undefined; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public putSecurityQuery(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get securityQueryInput() { + return this._securityQuery.internalValue; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestList(this, "request", false); - public get request() { - return this._request; + // style - computed: false, optional: true, required: false + private _style = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyleOutputReference(this, "style"); + public get style() { + return this._style; } - public putRequest(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; + public putStyle(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestStyle) { + this._style.internalValue = value; } - public resetRequest() { - this._request.internalValue = undefined; + public resetStyle() { + this._style.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get styleInput() { + return this._style.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition { + +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest[] | cdktf.IResolvable + /** - * The number of columns to display. Valid values are `one_column`, `two_column`, `three_column`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_format Dashboard#display_format} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly displayFormat?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * APM environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * @param index the index of the item to return */ - readonly env: string; + public get(index: number): DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestOutputReference { + return new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetToplistDefinition { /** * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * @@ -18999,60 +18618,6 @@ export interface DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition { */ readonly liveSpan?: string; /** - * APM service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} - */ - readonly service: string; - /** - * Whether to show the latency breakdown or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_breakdown Dashboard#show_breakdown} - */ - readonly showBreakdown?: boolean | cdktf.IResolvable; - /** - * Whether to show the latency distribution or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_distribution Dashboard#show_distribution} - */ - readonly showDistribution?: boolean | cdktf.IResolvable; - /** - * Whether to show the error metrics or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_errors Dashboard#show_errors} - */ - readonly showErrors?: boolean | cdktf.IResolvable; - /** - * Whether to show the hits metrics or not - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_hits Dashboard#show_hits} - */ - readonly showHits?: boolean | cdktf.IResolvable; - /** - * Whether to show the latency metrics or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_latency Dashboard#show_latency} - */ - readonly showLatency?: boolean | cdktf.IResolvable; - /** - * Whether to show the resource list or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_resource_list Dashboard#show_resource_list} - */ - readonly showResourceList?: boolean | cdktf.IResolvable; - /** - * The size of the widget. Valid values are `small`, `medium`, `large`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#size_format Dashboard#size_format} - */ - readonly sizeFormat?: string; - /** - * APM span name - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#span_name Dashboard#span_name} - */ - readonly spanName: string; - /** * The title of the widget. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} @@ -19070,33 +18635,36 @@ export interface DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition { * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - display_format: cdktf.stringToTerraform(struct!.displayFormat), - env: cdktf.stringToTerraform(struct!.env), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - service: cdktf.stringToTerraform(struct!.service), - show_breakdown: cdktf.booleanToTerraform(struct!.showBreakdown), - show_distribution: cdktf.booleanToTerraform(struct!.showDistribution), - show_errors: cdktf.booleanToTerraform(struct!.showErrors), - show_hits: cdktf.booleanToTerraform(struct!.showHits), - show_latency: cdktf.booleanToTerraform(struct!.showLatency), - show_resource_list: cdktf.booleanToTerraform(struct!.showResourceList), - size_format: cdktf.stringToTerraform(struct!.sizeFormat), - span_name: cdktf.stringToTerraform(struct!.spanName), +export function dashboardWidgetGroupDefinitionWidgetToplistDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetToplistDefinition): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + live_span: cdktf.stringToTerraform(struct!.liveSpan), title: cdktf.stringToTerraform(struct!.title), title_align: cdktf.stringToTerraform(struct!.titleAlign), title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkToTerraform, true)(struct!.customLink), + request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19107,57 +18675,13 @@ export class DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputRef super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetToplistDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._displayFormat !== undefined) { - hasAnyValues = true; - internalValueResult.displayFormat = this._displayFormat; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } if (this._liveSpan !== undefined) { hasAnyValues = true; internalValueResult.liveSpan = this._liveSpan; } - if (this._service !== undefined) { - hasAnyValues = true; - internalValueResult.service = this._service; - } - if (this._showBreakdown !== undefined) { - hasAnyValues = true; - internalValueResult.showBreakdown = this._showBreakdown; - } - if (this._showDistribution !== undefined) { - hasAnyValues = true; - internalValueResult.showDistribution = this._showDistribution; - } - if (this._showErrors !== undefined) { - hasAnyValues = true; - internalValueResult.showErrors = this._showErrors; - } - if (this._showHits !== undefined) { - hasAnyValues = true; - internalValueResult.showHits = this._showHits; - } - if (this._showLatency !== undefined) { - hasAnyValues = true; - internalValueResult.showLatency = this._showLatency; - } - if (this._showResourceList !== undefined) { - hasAnyValues = true; - internalValueResult.showResourceList = this._showResourceList; - } - if (this._sizeFormat !== undefined) { - hasAnyValues = true; - internalValueResult.sizeFormat = this._sizeFormat; - } - if (this._spanName !== undefined) { - hasAnyValues = true; - internalValueResult.spanName = this._spanName; - } if (this._title !== undefined) { hasAnyValues = true; internalValueResult.title = this._title; @@ -19170,229 +18694,52 @@ export class DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputRef hasAnyValues = true; internalValueResult.titleSize = this._titleSize; } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetToplistDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._displayFormat = undefined; - this._env = undefined; this._liveSpan = undefined; - this._service = undefined; - this._showBreakdown = undefined; - this._showDistribution = undefined; - this._showErrors = undefined; - this._showHits = undefined; - this._showLatency = undefined; - this._showResourceList = undefined; - this._sizeFormat = undefined; - this._spanName = undefined; this._title = undefined; this._titleAlign = undefined; this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._displayFormat = value.displayFormat; - this._env = value.env; this._liveSpan = value.liveSpan; - this._service = value.service; - this._showBreakdown = value.showBreakdown; - this._showDistribution = value.showDistribution; - this._showErrors = value.showErrors; - this._showHits = value.showHits; - this._showLatency = value.showLatency; - this._showResourceList = value.showResourceList; - this._sizeFormat = value.sizeFormat; - this._spanName = value.spanName; this._title = value.title; this._titleAlign = value.titleAlign; this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._request.internalValue = value.request; } } - // display_format - computed: false, optional: true, required: false - private _displayFormat?: string; - public get displayFormat() { - return this.getStringAttribute('display_format'); - } - public set displayFormat(value: string) { - this._displayFormat = value; - } - public resetDisplayFormat() { - this._displayFormat = undefined; - } - // Temporarily expose input value. Use with caution. - public get displayFormatInput() { - return this._displayFormat; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - // live_span - computed: false, optional: true, required: false private _liveSpan?: string; public get liveSpan() { return this.getStringAttribute('live_span'); } - public set liveSpan(value: string) { - this._liveSpan = value; - } - public resetLiveSpan() { - this._liveSpan = undefined; - } - // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; - } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; - } - - // show_breakdown - computed: false, optional: true, required: false - private _showBreakdown?: boolean | cdktf.IResolvable; - public get showBreakdown() { - return this.getBooleanAttribute('show_breakdown'); - } - public set showBreakdown(value: boolean | cdktf.IResolvable) { - this._showBreakdown = value; - } - public resetShowBreakdown() { - this._showBreakdown = undefined; - } - // Temporarily expose input value. Use with caution. - public get showBreakdownInput() { - return this._showBreakdown; - } - - // show_distribution - computed: false, optional: true, required: false - private _showDistribution?: boolean | cdktf.IResolvable; - public get showDistribution() { - return this.getBooleanAttribute('show_distribution'); - } - public set showDistribution(value: boolean | cdktf.IResolvable) { - this._showDistribution = value; - } - public resetShowDistribution() { - this._showDistribution = undefined; - } - // Temporarily expose input value. Use with caution. - public get showDistributionInput() { - return this._showDistribution; - } - - // show_errors - computed: false, optional: true, required: false - private _showErrors?: boolean | cdktf.IResolvable; - public get showErrors() { - return this.getBooleanAttribute('show_errors'); - } - public set showErrors(value: boolean | cdktf.IResolvable) { - this._showErrors = value; - } - public resetShowErrors() { - this._showErrors = undefined; - } - // Temporarily expose input value. Use with caution. - public get showErrorsInput() { - return this._showErrors; - } - - // show_hits - computed: false, optional: true, required: false - private _showHits?: boolean | cdktf.IResolvable; - public get showHits() { - return this.getBooleanAttribute('show_hits'); - } - public set showHits(value: boolean | cdktf.IResolvable) { - this._showHits = value; - } - public resetShowHits() { - this._showHits = undefined; - } - // Temporarily expose input value. Use with caution. - public get showHitsInput() { - return this._showHits; - } - - // show_latency - computed: false, optional: true, required: false - private _showLatency?: boolean | cdktf.IResolvable; - public get showLatency() { - return this.getBooleanAttribute('show_latency'); - } - public set showLatency(value: boolean | cdktf.IResolvable) { - this._showLatency = value; - } - public resetShowLatency() { - this._showLatency = undefined; - } - // Temporarily expose input value. Use with caution. - public get showLatencyInput() { - return this._showLatency; - } - - // show_resource_list - computed: false, optional: true, required: false - private _showResourceList?: boolean | cdktf.IResolvable; - public get showResourceList() { - return this.getBooleanAttribute('show_resource_list'); - } - public set showResourceList(value: boolean | cdktf.IResolvable) { - this._showResourceList = value; - } - public resetShowResourceList() { - this._showResourceList = undefined; - } - // Temporarily expose input value. Use with caution. - public get showResourceListInput() { - return this._showResourceList; - } - - // size_format - computed: false, optional: true, required: false - private _sizeFormat?: string; - public get sizeFormat() { - return this.getStringAttribute('size_format'); - } - public set sizeFormat(value: string) { - this._sizeFormat = value; - } - public resetSizeFormat() { - this._sizeFormat = undefined; - } - // Temporarily expose input value. Use with caution. - public get sizeFormatInput() { - return this._sizeFormat; - } - - // span_name - computed: false, optional: false, required: true - private _spanName?: string; - public get spanName() { - return this.getStringAttribute('span_name'); + public set liveSpan(value: string) { + this._liveSpan = value; } - public set spanName(value: string) { - this._spanName = value; + public resetLiveSpan() { + this._liveSpan = undefined; } // Temporarily expose input value. Use with caution. - public get spanNameInput() { - return this._spanName; + public get liveSpanInput() { + return this._liveSpan; } // title - computed: false, optional: true, required: false @@ -19442,83 +18789,259 @@ export class DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputRef public get titleSizeInput() { return this._titleSize; } + + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequestList(this, "request", false); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetGroupDefinitionWidgetToplistDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; + } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats { +export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink { /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly comparator: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The color palette to apply to the background, same values available as palette. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly customBgColor?: string; + readonly label?: string; /** - * The color palette to apply to the foreground, same values available as palette. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly customFgColor?: string; + readonly link?: string; /** - * Setting this to True hides values. + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly hideValue?: boolean | cdktf.IResolvable; + readonly overrideLabel?: string; +} + +export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), + } +} + +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly imageUrl?: string; + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._isHidden !== undefined) { + hasAnyValues = true; + internalValueResult.isHidden = this._isHidden; + } + if (this._label !== undefined) { + hasAnyValues = true; + internalValueResult.label = this._label; + } + if (this._link !== undefined) { + hasAnyValues = true; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; + } + } + + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); + } + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; + } + // Temporarily expose input value. Use with caution. + public get isHiddenInput() { + return this._isHidden; + } + + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); + } + public set label(value: string) { + this._label = value; + } + public resetLabel() { + this._label = undefined; + } + // Temporarily expose input value. Use with caution. + public get labelInput() { + return this._label; + } + + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); + } + public set link(value: string) { + this._link = value; + } + public resetLink() { + this._link = undefined; + } + // Temporarily expose input value. Use with caution. + public get linkInput() { + return this._link; + } + + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); + } + public set overrideLabel(value: string) { + this._overrideLabel = value; + } + public resetOverrideLabel() { + this._overrideLabel = undefined; + } + // Temporarily expose input value. Use with caution. + public get overrideLabelInput() { + return this._overrideLabel; + } +} + +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink[] | cdktf.IResolvable + /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly metric?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery { + /** + * The data source for the Topology request ('service_map' or 'data_streams'). Valid values are `data_streams`, `service_map`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly palette: string; + readonly dataSource: string; /** - * Defines the displayed timeframe. + * Your environment and primary tag (or `*` if enabled for your account). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filters Dashboard#filters} */ - readonly timeframe?: string; + readonly filters: string[]; /** - * A value for the comparator. + * The ID of the service to map. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} */ - readonly value: number; + readonly service: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + data_source: cdktf.stringToTerraform(struct!.dataSource), + filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filters), + service: cdktf.stringToTerraform(struct!.service), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -19532,64 +19055,34 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._palette !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.dataSource = this._dataSource; } - if (this._timeframe !== undefined) { + if (this._filters !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.filters = this._filters; } - if (this._value !== undefined) { + if (this._service !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.service = this._service; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; + this._dataSource = undefined; + this._filters = undefined; + this._service = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -19598,156 +19091,54 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._dataSource = value.dataSource; + this._filters = value.filters; + this._service = value.service; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); - } - public set customBgColor(value: string) { - this._customBgColor = value; - } - public resetCustomBgColor() { - this._customBgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; - } - - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); - } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); - } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; - } - public resetHideValue() { - this._hideValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; - } - - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); - } - public set imageUrl(value: string) { - this._imageUrl = value; - } - public resetImageUrl() { - this._imageUrl = undefined; - } - // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; - } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set palette(value: string) { - this._palette = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get dataSourceInput() { + return this._dataSource; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; + // filters - computed: false, optional: false, required: true + private _filters?: string[]; + public get filters() { + return this.getListAttribute('filters'); } - public resetTimeframe() { - this._timeframe = undefined; + public set filters(value: string[]) { + this._filters = value; } // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + public get filtersInput() { + return this._filters; } - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); } - public set value(value: number) { - this._value = value; + public set service(value: string) { + this._service = value; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get serviceInput() { + return this._service; } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19761,401 +19152,433 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit { +export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest { /** - * The number of results to return + * The request type for the Topology request ('topology'). Valid values are `topology`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request_type Dashboard#request_type} */ - readonly count?: number; + readonly requestType: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly order?: string; + readonly query: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit): any { +export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), + request_type: cdktf.stringToTerraform(struct!.requestType), + query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryToTerraform, true)(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._requestType !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.requestType = this._requestType; } - if (this._order !== undefined) { + if (this._query?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.query = this._query?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._requestType = undefined; + this._query.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; - this._order = value.order; + this.resolvableValue = undefined; + this._requestType = value.requestType; + this._query.internalValue = value.query; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); - } - public set count(value: number) { - this._count = value; + // request_type - computed: false, optional: false, required: true + private _requestType?: string; + public get requestType() { + return this.getStringAttribute('request_type'); } - public resetCount() { - this._count = undefined; + public set requestType(value: string) { + this._requestType = value; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get requestTypeInput() { + return this._requestType; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; + // query - computed: false, optional: false, required: true + private _query = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public resetOrder() { - this._order = undefined; + public putQuery(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get queryInput() { + return this._query.internalValue; } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula { + +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest[] | cdktf.IResolvable + /** - * An expression alias. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition { + /** + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly alias?: string; + readonly title?: string; /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly cellDisplayMode?: string; + readonly titleAlign?: string; /** - * A string expression built from queries, formulas, and functions. + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly formulaExpression: string; + readonly titleSize?: string; /** - * conditional_formats block + * custom_link block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} */ - readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly customLink?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink[] | cdktf.IResolvable; /** - * limit block + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly limit?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit; + readonly request?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitToTerraform(struct!.limit), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkToTerraform, true)(struct!.customLink), + request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.alias = this._alias; + internalValueResult.title = this._title; } - if (this._cellDisplayMode !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.titleAlign = this._titleAlign; } - if (this._formulaExpression !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.titleSize = this._titleSize; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._customLink?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.customLink = this._customLink?.internalValue; } - if (this._limit?.internalValue !== undefined) { + if (this._request?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._request.internalValue = value.request; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set alias(value: string) { - this._alias = value; + public set title(value: string) { + this._title = value; } - public resetAlias() { - this._alias = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get titleInput() { + return this._title; } - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get titleAlignInput() { + return this._titleAlign; } - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get titleSizeInput() { + return this._titleSize; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; } - public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public putCustomLink(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetCustomLink() { + this._customLink.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get customLinkInput() { + return this._customLink.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequestList(this, "request", false); + public get request() { + return this._request; } - public putLimit(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public putRequest(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetRequest() { + this._request.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get requestInput() { + return this._request.internalValue; } } - -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The number of columns to display. Valid values are `one_column`, `two_column`, `three_column`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_format Dashboard#display_format} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly displayFormat?: string; /** - * @param index the index of the item to return + * APM environment. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery { + readonly env: string; /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - readonly dataSource: string; + readonly liveSpan?: string; /** - * APM Environment. + * APM service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} */ - readonly env: string; + readonly service: string; /** - * Determines whether stats for upstream or downstream dependencies should be queried. + * Whether to show the latency breakdown or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_breakdown Dashboard#show_breakdown} */ - readonly isUpstream?: boolean | cdktf.IResolvable; + readonly showBreakdown?: boolean | cdktf.IResolvable; /** - * The name of query for use in formulas. + * Whether to show the latency distribution or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_distribution Dashboard#show_distribution} */ - readonly name: string; + readonly showDistribution?: boolean | cdktf.IResolvable; /** - * Name of operation on service. + * Whether to show the error metrics or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_errors Dashboard#show_errors} */ - readonly operationName: string; + readonly showErrors?: boolean | cdktf.IResolvable; /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * Whether to show the hits metrics or not * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_hits Dashboard#show_hits} */ - readonly primaryTagName?: string; + readonly showHits?: boolean | cdktf.IResolvable; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * Whether to show the latency metrics or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_latency Dashboard#show_latency} */ - readonly primaryTagValue?: string; + readonly showLatency?: boolean | cdktf.IResolvable; /** - * APM resource. + * Whether to show the resource list or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_resource_list Dashboard#show_resource_list} */ - readonly resourceName: string; + readonly showResourceList?: boolean | cdktf.IResolvable; /** - * APM service. + * The size of the widget. Valid values are `small`, `medium`, `large`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#size_format Dashboard#size_format} */ - readonly service: string; + readonly sizeFormat?: string; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * APM span name * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#span_name Dashboard#span_name} */ - readonly stat: string; + readonly spanName: string; + /** + * The title of the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + */ + readonly title?: string; + /** + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), + display_format: cdktf.stringToTerraform(struct!.displayFormat), env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), + live_span: cdktf.stringToTerraform(struct!.liveSpan), service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + show_breakdown: cdktf.booleanToTerraform(struct!.showBreakdown), + show_distribution: cdktf.booleanToTerraform(struct!.showDistribution), + show_errors: cdktf.booleanToTerraform(struct!.showErrors), + show_hits: cdktf.booleanToTerraform(struct!.showHits), + show_latency: cdktf.booleanToTerraform(struct!.showLatency), + show_resource_list: cdktf.booleanToTerraform(struct!.showResourceList), + size_format: cdktf.stringToTerraform(struct!.sizeFormat), + span_name: cdktf.stringToTerraform(struct!.spanName), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -20166,92 +19589,125 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryAp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { + if (this._displayFormat !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.displayFormat = this._displayFormat; } if (this._env !== undefined) { hasAnyValues = true; internalValueResult.env = this._env; } - if (this._isUpstream !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; + internalValueResult.liveSpan = this._liveSpan; } - if (this._name !== undefined) { + if (this._service !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.service = this._service; } - if (this._operationName !== undefined) { + if (this._showBreakdown !== undefined) { hasAnyValues = true; - internalValueResult.operationName = this._operationName; + internalValueResult.showBreakdown = this._showBreakdown; } - if (this._primaryTagName !== undefined) { + if (this._showDistribution !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.showDistribution = this._showDistribution; } - if (this._primaryTagValue !== undefined) { + if (this._showErrors !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.showErrors = this._showErrors; } - if (this._resourceName !== undefined) { + if (this._showHits !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.showHits = this._showHits; } - if (this._service !== undefined) { + if (this._showLatency !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.showLatency = this._showLatency; } - if (this._stat !== undefined) { + if (this._showResourceList !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.showResourceList = this._showResourceList; + } + if (this._sizeFormat !== undefined) { + hasAnyValues = true; + internalValueResult.sizeFormat = this._sizeFormat; + } + if (this._spanName !== undefined) { + hasAnyValues = true; + internalValueResult.spanName = this._spanName; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; + this._displayFormat = undefined; this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; + this._liveSpan = undefined; this._service = undefined; - this._stat = undefined; + this._showBreakdown = undefined; + this._showDistribution = undefined; + this._showErrors = undefined; + this._showHits = undefined; + this._showLatency = undefined; + this._showResourceList = undefined; + this._sizeFormat = undefined; + this._spanName = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; } else { - this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; + this.isEmptyObject = Object.keys(value).length === 0; + this._displayFormat = value.displayFormat; + this._env = value.env; + this._liveSpan = value.liveSpan; this._service = value.service; - this._stat = value.stat; + this._showBreakdown = value.showBreakdown; + this._showDistribution = value.showDistribution; + this._showErrors = value.showErrors; + this._showHits = value.showHits; + this._showLatency = value.showLatency; + this._showResourceList = value.showResourceList; + this._sizeFormat = value.sizeFormat; + this._spanName = value.spanName; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // display_format - computed: false, optional: true, required: false + private _displayFormat?: string; + public get displayFormat() { + return this.getStringAttribute('display_format'); } - public set dataSource(value: string) { - this._dataSource = value; + public set displayFormat(value: string) { + this._displayFormat = value; + } + public resetDisplayFormat() { + this._displayFormat = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get displayFormatInput() { + return this._displayFormat; } // env - computed: false, optional: false, required: true @@ -20267,466 +19723,674 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryAp return this._env; } - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + public set liveSpan(value: string) { + this._liveSpan = value; } - public resetIsUpstream() { - this._isUpstream = undefined; + public resetLiveSpan() { + this._liveSpan = undefined; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get liveSpanInput() { + return this._liveSpan; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); } - public set name(value: string) { - this._name = value; + public set service(value: string) { + this._service = value; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get serviceInput() { + return this._service; } - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + // show_breakdown - computed: false, optional: true, required: false + private _showBreakdown?: boolean | cdktf.IResolvable; + public get showBreakdown() { + return this.getBooleanAttribute('show_breakdown'); } - public set operationName(value: string) { - this._operationName = value; + public set showBreakdown(value: boolean | cdktf.IResolvable) { + this._showBreakdown = value; + } + public resetShowBreakdown() { + this._showBreakdown = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get showBreakdownInput() { + return this._showBreakdown; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // show_distribution - computed: false, optional: true, required: false + private _showDistribution?: boolean | cdktf.IResolvable; + public get showDistribution() { + return this.getBooleanAttribute('show_distribution'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set showDistribution(value: boolean | cdktf.IResolvable) { + this._showDistribution = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetShowDistribution() { + this._showDistribution = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get showDistributionInput() { + return this._showDistribution; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // show_errors - computed: false, optional: true, required: false + private _showErrors?: boolean | cdktf.IResolvable; + public get showErrors() { + return this.getBooleanAttribute('show_errors'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set showErrors(value: boolean | cdktf.IResolvable) { + this._showErrors = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetShowErrors() { + this._showErrors = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get showErrorsInput() { + return this._showErrors; } - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + // show_hits - computed: false, optional: true, required: false + private _showHits?: boolean | cdktf.IResolvable; + public get showHits() { + return this.getBooleanAttribute('show_hits'); } - public set resourceName(value: string) { - this._resourceName = value; + public set showHits(value: boolean | cdktf.IResolvable) { + this._showHits = value; + } + public resetShowHits() { + this._showHits = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get showHitsInput() { + return this._showHits; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + // show_latency - computed: false, optional: true, required: false + private _showLatency?: boolean | cdktf.IResolvable; + public get showLatency() { + return this.getBooleanAttribute('show_latency'); } - public set service(value: string) { - this._service = value; + public set showLatency(value: boolean | cdktf.IResolvable) { + this._showLatency = value; + } + public resetShowLatency() { + this._showLatency = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get showLatencyInput() { + return this._showLatency; } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + // show_resource_list - computed: false, optional: true, required: false + private _showResourceList?: boolean | cdktf.IResolvable; + public get showResourceList() { + return this.getBooleanAttribute('show_resource_list'); + } + public set showResourceList(value: boolean | cdktf.IResolvable) { + this._showResourceList = value; + } + public resetShowResourceList() { + this._showResourceList = undefined; + } + // Temporarily expose input value. Use with caution. + public get showResourceListInput() { + return this._showResourceList; + } + + // size_format - computed: false, optional: true, required: false + private _sizeFormat?: string; + public get sizeFormat() { + return this.getStringAttribute('size_format'); + } + public set sizeFormat(value: string) { + this._sizeFormat = value; + } + public resetSizeFormat() { + this._sizeFormat = undefined; + } + // Temporarily expose input value. Use with caution. + public get sizeFormatInput() { + return this._sizeFormat; + } + + // span_name - computed: false, optional: false, required: true + private _spanName?: string; + public get spanName() { + return this.getStringAttribute('span_name'); + } + public set spanName(value: string) { + this._spanName = value; + } + // Temporarily expose input value. Use with caution. + public get spanNameInput() { + return this._spanName; + } + + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); + } + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; + } + + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } + + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; } - public set stat(value: string) { - this._stat = value; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get titleSizeInput() { + return this._titleSize; } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats { /** - * APM Environment. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly env: string; + readonly comparator: string; /** - * Array of fields to group results by. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly groupBy?: string[]; + readonly customBgColor?: string; /** - * The name of query for use in formulas. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly name: string; + readonly customFgColor?: string; /** - * Name of operation on service. + * Setting this to True hides values. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly operationName?: string; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * Displays an image as the background. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} */ - readonly primaryTagName?: string; + readonly imageUrl?: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The metric from the request to correlate with this conditional format. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly primaryTagValue?: string; + readonly metric?: string; /** - * APM resource. + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} */ - readonly resourceName?: string; + readonly palette: string; /** - * APM service. + * Defines the displayed timeframe. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} */ - readonly service: string; + readonly timeframe?: string; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * A value for the comparator. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} */ - readonly stat: string; + readonly value: number; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.env = this._env; + internalValueResult.comparator = this._comparator; } - if (this._groupBy !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; + internalValueResult.customBgColor = this._customBgColor; } - if (this._name !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.customFgColor = this._customFgColor; } - if (this._operationName !== undefined) { + if (this._hideValue !== undefined) { hasAnyValues = true; - internalValueResult.operationName = this._operationName; + internalValueResult.hideValue = this._hideValue; } - if (this._primaryTagName !== undefined) { + if (this._imageUrl !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.imageUrl = this._imageUrl; } - if (this._primaryTagValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.metric = this._metric; } - if (this._resourceName !== undefined) { + if (this._palette !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.palette = this._palette; } - if (this._service !== undefined) { + if (this._timeframe !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.timeframe = this._timeframe; } - if (this._stat !== undefined) { + if (this._value !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set dataSource(value: string) { - this._dataSource = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get comparatorInput() { + return this._comparator; } - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); + } + public set customBgColor(value: string) { + this._customBgColor = value; + } + public resetCustomBgColor() { + this._customBgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customBgColorInput() { + return this._customBgColor; + } + + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); + } + public set customFgColor(value: string) { + this._customFgColor = value; + } + public resetCustomFgColor() { + this._customFgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customFgColorInput() { + return this._customFgColor; + } + + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); + } + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; + } + public resetHideValue() { + this._hideValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get hideValueInput() { + return this._hideValue; + } + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); } - public set env(value: string) { - this._env = value; + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get imageUrlInput() { + return this._imageUrl; } - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set groupBy(value: string[]) { - this._groupBy = value; + public set metric(value: string) { + this._metric = value; } - public resetGroupBy() { - this._groupBy = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; + public get metricInput() { + return this._metric; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public set name(value: string) { - this._name = value; + public set palette(value: string) { + this._palette = value; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get paletteInput() { + return this._palette; } - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); } - public set operationName(value: string) { - this._operationName = value; + public set timeframe(value: string) { + this._timeframe = value; } - public resetOperationName() { - this._operationName = undefined; + public resetTimeframe() { + this._timeframe = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get timeframeInput() { + return this._timeframe; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); - } - public set primaryTagName(value: string) { - this._primaryTagName = value; + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public set value(value: number) { + this._value = value; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get valueInput() { + return this._value; } +} - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; +} +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit { + /** + * The number of results to return + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + */ + readonly count?: number; + /** + * The direction of the sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order?: string; +} + +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + return { + count: cdktf.numberToTerraform(struct!.count), + order: cdktf.stringToTerraform(struct!.order), } +} - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public resetResourceName() { - this._resourceName = undefined; + + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._count !== undefined) { + hasAnyValues = true; + internalValueResult.count = this._count; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._count = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._count = value.count; + this._order = value.order; + } } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set service(value: string) { - this._service = value; + public set count(value: number) { + this._count = value; + } + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get countInput() { + return this._count; } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set stat(value: string) { - this._stat = value; + public set order(value: string) { + this._order = value; + } + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly aggregation: string; + readonly alias?: string; /** - * A time interval in milliseconds. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly interval?: number; + readonly cellDisplayMode?: string; /** - * The measurable attribute to compute. + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly metric?: string; + readonly formulaExpression: string; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + /** + * limit block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -20740,34 +20404,44 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEv super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.alias = this._alias; } - if (this._interval !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._metric !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.formulaExpression = this._formulaExpression; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._limit?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; - this._metric = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -20776,60 +20450,94 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEv else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; - this._metric = value.metric; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set aggregation(value: string) { - this._aggregation = value; + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aliasInput() { + return this._alias; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set interval(value: number) { - this._interval = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetInterval() { - this._interval = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public set metric(value: string) { - this._metric = value; + public set formulaExpression(value: string) { + this._formulaExpression = value; } - public resetMetric() { - this._metric = undefined; + // Temporarily expose input value. Use with caution. + public get formulaExpressionInput() { + return this._formulaExpression; + } + + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; + } + public putConditionalFormats(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; + } + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; + } + + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; + } + public putLimit(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; + } + public resetLimit() { + this._limit.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -20843,129 +20551,7 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEv /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort { - /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The metric used for sorting group by results. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; - /** - * Direction of sort. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order?: string; -} - -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._metric = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._metric = value.metric; - this._order = value.order; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - public resetOrder() { - this._order = undefined; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } diff --git a/src/dashboard/index-structs/structs2000.ts b/src/dashboard/index-structs/structs2000.ts index e54b10833..d1513e9c3 100644 --- a/src/dashboard/index-structs/structs2000.ts +++ b/src/dashboard/index-structs/structs2000.ts @@ -1,17 +1,5 @@ import * as cdktf from 'cdktf'; -import { DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort, -dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortToTerraform, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute, -dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeToTerraform, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeList, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery, -dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryToTerraform, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery, -dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryToTerraform, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference, -DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula, +import { DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula, dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaToTerraform, DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaList, DashboardWidgetGroupDefinitionWidgetSunburstDefinition, @@ -94,238 +82,336 @@ dashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionToTerraform, DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionOutputReference, DashboardWidgetGroupDefinitionWidgetServicemapDefinition, dashboardWidgetGroupDefinitionWidgetServicemapDefinitionToTerraform, -DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputReference } from './structs1200' -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy { +DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputReference, +DashboardWidgetGroupDefinitionWidgetSloListDefinition, +dashboardWidgetGroupDefinitionWidgetSloListDefinitionToTerraform, +DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference } from './structs1200' +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery { /** - * The event facet. + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet: string; + readonly dataSource: string; /** - * The number of groups to return. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly limit?: number; + readonly env: string; /** - * sort block + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly sort?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort; + readonly isUpstream?: boolean | cdktf.IResolvable; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Name of operation on service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + */ + readonly operationName: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._sort?.internalValue !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sort.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sort.internalValue = value.sort; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetLimit() { - this._limit = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get envInput() { + return this._env; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); } - public putSort(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get isUpstreamInput() { + return this._isUpstream; } -} -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set name(value: string) { + this._name = value; } -} -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch { - /** - * The events search string. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query: string; -} - -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - return { - query: cdktf.stringToTerraform(struct!.query), + + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; } -} -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._query !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query; - } - return hasAnyValues ? internalValueResult : undefined; + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._query = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; - } + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); } - public set query(value: string) { - this._query = value; + public set stat(value: string) { + this._stat = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get statInput() { + return this._stat; } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery { +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery { /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ readonly dataSource: string; /** - * An array of index names to query in the stream. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly indexes?: string[]; + readonly env: string; + /** + * Array of fields to group results by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: string[]; /** * The name of query for use in formulas. * @@ -333,41 +419,63 @@ export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQue */ readonly name: string; /** - * compute block + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly compute: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly operationName?: string; /** - * group_by block + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly primaryTagName?: string; /** - * search block + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly search?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch; + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -378,54 +486,78 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEv super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._indexes !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.env = this._env; + } + if (this._groupBy !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._compute?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.operationName = this._operationName; } - if (this._groupBy?.internalValue !== undefined) { + if (this._primaryTagName !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.primaryTagName = this._primaryTagName; } - if (this._search?.internalValue !== undefined) { + if (this._primaryTagValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._dataSource = undefined; - this._indexes = undefined; + this._env = undefined; + this._groupBy = undefined; this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dataSource = value.dataSource; - this._indexes = value.indexes; + this._env = value.env; + this._groupBy = value.groupBy; this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } @@ -442,26 +574,39 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEv return this._dataSource; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); - } - public set indexes(value: string[]) { - this._indexes = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetIndexes() { - this._indexes = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get envInput() { + return this._env; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } public set name(value: string) { this._name = value; @@ -471,275 +616,284 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEv return this._name; } - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public putCompute(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get operationNameInput() { + return this._operationName; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get primaryTagNameInput() { + return this._primaryTagName; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public putSearch(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute { /** - * The data source for metrics queries. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly dataSource?: string; + readonly aggregation: string; /** - * The name of the query for use in formulas. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly name: string; + readonly interval?: number; /** - * The metrics query definition. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly query: string; + readonly metric?: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.aggregation = this._aggregation; } - if (this._name !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.interval = this._interval; } - if (this._query !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.metric = this._metric; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; + this._metric = value.metric; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetAggregator() { - this._aggregator = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get aggregationInput() { + return this._aggregation; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set dataSource(value: string) { - this._dataSource = value; + public set interval(value: number) { + this._interval = value; } - public resetDataSource() { - this._dataSource = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get intervalInput() { + return this._interval; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set name(value: string) { - this._name = value; + public set metric(value: string) { + this._metric = value; } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); - } - public set query(value: string) { - this._query = value; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get metricInput() { + return this._metric; } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; + +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly dataSource: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + * @param index the index of the item to return */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort { /** - * The number of hits to return. + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly limit?: number; + readonly aggregation: string; /** - * The process metric name. + * The metric used for sorting group by results. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric: string; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * The direction of the sort. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} - */ - readonly sort?: string; - /** - * An array of tags to filter by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} - */ - readonly tagFilters?: string[]; + readonly metric?: string; /** - * The text to use as a filter. + * Direction of sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly textFilter?: string; + readonly order?: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), + aggregation: cdktf.stringToTerraform(struct!.aggregation), metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -750,137 +904,53 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryPr super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { - hasAnyValues = true; - internalValueResult.sort = this._sort; - } - if (this._tagFilters !== undefined) { - hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; - } - if (this._textFilter !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; + this._aggregation = undefined; this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; + this._aggregation = value.aggregation; this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._order = value.order; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; - } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; - } - // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLimit() { - this._limit = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get aggregationInput() { + return this._aggregation; } - // metric - computed: false, optional: false, required: true + // metric - computed: false, optional: true, required: false private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -888,120 +958,64 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryPr public set metric(value: string) { this._metric = value; } + public resetMetric() { + this._metric = undefined; + } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set name(value: string) { - this._name = value; + public set order(value: string) { + this._order = value; + } + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get orderInput() { + return this._order; } +} +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy { + /** + * The event facet. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet: string; + /** + * The number of groups to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort; +} - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); - } - public set sort(value: string) { - this._sort = value; - } - public resetSort() { - this._sort = undefined; - } - // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; - } - - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); - } - public set tagFilters(value: string[]) { - this._tagFilters = value; - } - public resetTagFilters() { - this._tagFilters = undefined; - } - // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; - } - - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); - } - public set textFilter(value: string) { - this._textFilter = value; - } - public resetTextFilter() { - this._textFilter = undefined; - } - // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; - } -} -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery; - /** - * apm_resource_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} - */ - readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery; - /** - * event_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} - */ - readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery; - /** - * metric_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} - */ - readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery; -} - -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -1015,44 +1029,34 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; - } - if (this._eventQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._processQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -1061,97 +1065,60 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOu else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; - } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; - } - - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; - } - public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; - } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; - } - - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; - } - public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public set facet(value: string) { + this._facet = value; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get facetInput() { + return this._facet; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get limitInput() { + return this._limit; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public putSort(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -1165,165 +1132,136 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryLi /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest { - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula[] | cdktf.IResolvable; +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch { /** - * query block + * The events search string. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly query?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery[] | cdktf.IResolvable; + readonly query: string; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaToTerraform, true)(struct!.formula), - query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryToTerraform, true)(struct!.query), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._query?.internalValue !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._formula.internalValue = undefined; - this._query.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._formula.internalValue = value.formula; - this._query.internalValue = value.query; + this._query = value.query; } } - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; - } - public resetFormula() { - this._formula.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; - } - - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryList(this, "query", false); + // query - computed: false, optional: false, required: true + private _query?: string; public get query() { - return this._query; - } - public putQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; + return this.getStringAttribute('query'); } - public resetQuery() { - this._query.internalValue = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. public get queryInput() { - return this._query.internalValue; + return this._query; } } - -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * An array of index names to query in the stream. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestOutputReference { - return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinition { + readonly indexes?: string[]; /** - * The title of the widget. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly title?: string; + readonly name: string; /** - * request block + * Storage location (private beta). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} */ - readonly request?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest[] | cdktf.IResolvable; + readonly storage?: string; + /** + * compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + */ + readonly compute: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinition): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - title: cdktf.stringToTerraform(struct!.title), - request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestToTerraform, true)(struct!.request), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1334,113 +1272,207 @@ export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReferenc super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinition | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._title !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.title = this._title; + internalValueResult.dataSource = this._dataSource; } - if (this._request?.internalValue !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.indexes = this._indexes; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinition | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._title = undefined; - this._request.internalValue = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._title = value.title; - this._request.internalValue = value.request; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; } } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetTitle() { - this._title = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get dataSourceInput() { + return this._dataSource; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestList(this, "request", false); - public get request() { - return this._request; + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public putRequest(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; + public set indexes(value: string[]) { + this._indexes = value; } - public resetRequest() { - this._request.internalValue = undefined; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get indexesInput() { + return this._indexes; } -} -export interface DashboardWidgetGroupDefinitionWidgetWidgetLayout { - /** - * The height of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#height Dashboard#height} - */ - readonly height: number; - /** - * Whether the widget should be the first one on the second column in high density or not. Only for the new dashboard layout and only one widget in the dashboard should have this property set to `true`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_column_break Dashboard#is_column_break} - */ - readonly isColumnBreak?: boolean | cdktf.IResolvable; - /** - * The width of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#width Dashboard#width} - */ - readonly width: number; - /** - * The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#x Dashboard#x} - */ - readonly x: number; - /** - * The position of the widget on the y (vertical) axis. Should be greater than or equal to 0. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#y Dashboard#y} - */ - readonly y: number; -} -export function dashboardWidgetGroupDefinitionWidgetWidgetLayoutToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference | DashboardWidgetGroupDefinitionWidgetWidgetLayout): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - height: cdktf.numberToTerraform(struct!.height), - is_column_break: cdktf.booleanToTerraform(struct!.isColumnBreak), - width: cdktf.numberToTerraform(struct!.width), - x: cdktf.numberToTerraform(struct!.x), - y: cdktf.numberToTerraform(struct!.y), + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; + } + public putCompute(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; + } + public putSearch(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; + } + public resetSearch() { + this._search.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchInput() { + return this._search.internalValue; + } +} +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery { + /** + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} + */ + readonly aggregator?: string; + /** + * The data source for metrics queries. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + */ + readonly dataSource?: string; + /** + * The name of the query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; } -export class DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference extends cdktf.ComplexObject { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), + } +} + +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1451,1457 +1483,441 @@ export class DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference ext super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidgetWidgetLayout | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._height !== undefined) { - hasAnyValues = true; - internalValueResult.height = this._height; - } - if (this._isColumnBreak !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.isColumnBreak = this._isColumnBreak; + internalValueResult.aggregator = this._aggregator; } - if (this._width !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.width = this._width; + internalValueResult.dataSource = this._dataSource; } - if (this._x !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.x = this._x; + internalValueResult.name = this._name; } - if (this._y !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.y = this._y; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetGroupDefinitionWidgetWidgetLayout | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._height = undefined; - this._isColumnBreak = undefined; - this._width = undefined; - this._x = undefined; - this._y = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._height = value.height; - this._isColumnBreak = value.isColumnBreak; - this._width = value.width; - this._x = value.x; - this._y = value.y; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // height - computed: false, optional: false, required: true - private _height?: number; - public get height() { - return this.getNumberAttribute('height'); - } - public set height(value: number) { - this._height = value; - } - // Temporarily expose input value. Use with caution. - public get heightInput() { - return this._height; - } - - // is_column_break - computed: false, optional: true, required: false - private _isColumnBreak?: boolean | cdktf.IResolvable; - public get isColumnBreak() { - return this.getBooleanAttribute('is_column_break'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set isColumnBreak(value: boolean | cdktf.IResolvable) { - this._isColumnBreak = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetIsColumnBreak() { - this._isColumnBreak = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get isColumnBreakInput() { - return this._isColumnBreak; + public get aggregatorInput() { + return this._aggregator; } - // width - computed: false, optional: false, required: true - private _width?: number; - public get width() { - return this.getNumberAttribute('width'); + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set width(value: number) { - this._width = value; + public set dataSource(value: string) { + this._dataSource = value; + } + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get widthInput() { - return this._width; + public get dataSourceInput() { + return this._dataSource; } - // x - computed: false, optional: false, required: true - private _x?: number; - public get x() { - return this.getNumberAttribute('x'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set x(value: number) { - this._x = value; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get xInput() { - return this._x; + public get nameInput() { + return this._name; } - // y - computed: false, optional: false, required: true - private _y?: number; - public get y() { - return this.getNumberAttribute('y'); + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public set y(value: number) { - this._y = value; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get yInput() { - return this._y; + public get queryInput() { + return this._query; } } -export interface DashboardWidgetGroupDefinitionWidget { +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery { /** - * alert_graph_definition block + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alert_graph_definition Dashboard#alert_graph_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly alertGraphDefinition?: DashboardWidgetGroupDefinitionWidgetAlertGraphDefinition; + readonly aggregator?: string; /** - * alert_value_definition block + * The data source for process queries. Valid values are `process`, `container`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alert_value_definition Dashboard#alert_value_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly alertValueDefinition?: DashboardWidgetGroupDefinitionWidgetAlertValueDefinition; + readonly dataSource: string; /** - * change_definition block + * Whether to normalize the CPU percentages. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#change_definition Dashboard#change_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} */ - readonly changeDefinition?: DashboardWidgetGroupDefinitionWidgetChangeDefinition; + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; /** - * check_status_definition block + * The number of hits to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#check_status_definition Dashboard#check_status_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly checkStatusDefinition?: DashboardWidgetGroupDefinitionWidgetCheckStatusDefinition; + readonly limit?: number; /** - * distribution_definition block + * The process metric name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#distribution_definition Dashboard#distribution_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly distributionDefinition?: DashboardWidgetGroupDefinitionWidgetDistributionDefinition; - /** - * event_stream_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_stream_definition Dashboard#event_stream_definition} - */ - readonly eventStreamDefinition?: DashboardWidgetGroupDefinitionWidgetEventStreamDefinition; - /** - * event_timeline_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_timeline_definition Dashboard#event_timeline_definition} - */ - readonly eventTimelineDefinition?: DashboardWidgetGroupDefinitionWidgetEventTimelineDefinition; - /** - * free_text_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#free_text_definition Dashboard#free_text_definition} - */ - readonly freeTextDefinition?: DashboardWidgetGroupDefinitionWidgetFreeTextDefinition; - /** - * geomap_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#geomap_definition Dashboard#geomap_definition} - */ - readonly geomapDefinition?: DashboardWidgetGroupDefinitionWidgetGeomapDefinition; - /** - * heatmap_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#heatmap_definition Dashboard#heatmap_definition} - */ - readonly heatmapDefinition?: DashboardWidgetGroupDefinitionWidgetHeatmapDefinition; - /** - * hostmap_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hostmap_definition Dashboard#hostmap_definition} - */ - readonly hostmapDefinition?: DashboardWidgetGroupDefinitionWidgetHostmapDefinition; - /** - * iframe_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#iframe_definition Dashboard#iframe_definition} - */ - readonly iframeDefinition?: DashboardWidgetGroupDefinitionWidgetIframeDefinition; - /** - * image_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_definition Dashboard#image_definition} - */ - readonly imageDefinition?: DashboardWidgetGroupDefinitionWidgetImageDefinition; - /** - * list_stream_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#list_stream_definition Dashboard#list_stream_definition} - */ - readonly listStreamDefinition?: DashboardWidgetGroupDefinitionWidgetListStreamDefinition; - /** - * log_stream_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_stream_definition Dashboard#log_stream_definition} - */ - readonly logStreamDefinition?: DashboardWidgetGroupDefinitionWidgetLogStreamDefinition; - /** - * manage_status_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#manage_status_definition Dashboard#manage_status_definition} - */ - readonly manageStatusDefinition?: DashboardWidgetGroupDefinitionWidgetManageStatusDefinition; - /** - * note_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#note_definition Dashboard#note_definition} - */ - readonly noteDefinition?: DashboardWidgetGroupDefinitionWidgetNoteDefinition; - /** - * query_table_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_table_definition Dashboard#query_table_definition} - */ - readonly queryTableDefinition?: DashboardWidgetGroupDefinitionWidgetQueryTableDefinition; - /** - * query_value_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_value_definition Dashboard#query_value_definition} - */ - readonly queryValueDefinition?: DashboardWidgetGroupDefinitionWidgetQueryValueDefinition; - /** - * scatterplot_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scatterplot_definition Dashboard#scatterplot_definition} - */ - readonly scatterplotDefinition?: DashboardWidgetGroupDefinitionWidgetScatterplotDefinition; - /** - * service_level_objective_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service_level_objective_definition Dashboard#service_level_objective_definition} - */ - readonly serviceLevelObjectiveDefinition?: DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition; - /** - * servicemap_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#servicemap_definition Dashboard#servicemap_definition} - */ - readonly servicemapDefinition?: DashboardWidgetGroupDefinitionWidgetServicemapDefinition; - /** - * sunburst_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sunburst_definition Dashboard#sunburst_definition} - */ - readonly sunburstDefinition?: DashboardWidgetGroupDefinitionWidgetSunburstDefinition; - /** - * timeseries_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeseries_definition Dashboard#timeseries_definition} - */ - readonly timeseriesDefinition?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition; - /** - * toplist_definition block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#toplist_definition Dashboard#toplist_definition} - */ - readonly toplistDefinition?: DashboardWidgetGroupDefinitionWidgetToplistDefinition; + readonly metric: string; /** - * topology_map_definition block + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#topology_map_definition Dashboard#topology_map_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly topologyMapDefinition?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition; + readonly name: string; /** - * trace_service_definition block + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#trace_service_definition Dashboard#trace_service_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly traceServiceDefinition?: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition; + readonly sort?: string; /** - * treemap_definition block + * An array of tags to filter by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#treemap_definition Dashboard#treemap_definition} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} */ - readonly treemapDefinition?: DashboardWidgetGroupDefinitionWidgetTreemapDefinition; + readonly tagFilters?: string[]; /** - * widget_layout block + * The text to use as a filter. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#widget_layout Dashboard#widget_layout} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} */ - readonly widgetLayout?: DashboardWidgetGroupDefinitionWidgetWidgetLayout; + readonly textFilter?: string; } -export function dashboardWidgetGroupDefinitionWidgetToTerraform(struct?: DashboardWidgetGroupDefinitionWidget | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alert_graph_definition: dashboardWidgetGroupDefinitionWidgetAlertGraphDefinitionToTerraform(struct!.alertGraphDefinition), - alert_value_definition: dashboardWidgetGroupDefinitionWidgetAlertValueDefinitionToTerraform(struct!.alertValueDefinition), - change_definition: dashboardWidgetGroupDefinitionWidgetChangeDefinitionToTerraform(struct!.changeDefinition), - check_status_definition: dashboardWidgetGroupDefinitionWidgetCheckStatusDefinitionToTerraform(struct!.checkStatusDefinition), - distribution_definition: dashboardWidgetGroupDefinitionWidgetDistributionDefinitionToTerraform(struct!.distributionDefinition), - event_stream_definition: dashboardWidgetGroupDefinitionWidgetEventStreamDefinitionToTerraform(struct!.eventStreamDefinition), - event_timeline_definition: dashboardWidgetGroupDefinitionWidgetEventTimelineDefinitionToTerraform(struct!.eventTimelineDefinition), - free_text_definition: dashboardWidgetGroupDefinitionWidgetFreeTextDefinitionToTerraform(struct!.freeTextDefinition), - geomap_definition: dashboardWidgetGroupDefinitionWidgetGeomapDefinitionToTerraform(struct!.geomapDefinition), - heatmap_definition: dashboardWidgetGroupDefinitionWidgetHeatmapDefinitionToTerraform(struct!.heatmapDefinition), - hostmap_definition: dashboardWidgetGroupDefinitionWidgetHostmapDefinitionToTerraform(struct!.hostmapDefinition), - iframe_definition: dashboardWidgetGroupDefinitionWidgetIframeDefinitionToTerraform(struct!.iframeDefinition), - image_definition: dashboardWidgetGroupDefinitionWidgetImageDefinitionToTerraform(struct!.imageDefinition), - list_stream_definition: dashboardWidgetGroupDefinitionWidgetListStreamDefinitionToTerraform(struct!.listStreamDefinition), - log_stream_definition: dashboardWidgetGroupDefinitionWidgetLogStreamDefinitionToTerraform(struct!.logStreamDefinition), - manage_status_definition: dashboardWidgetGroupDefinitionWidgetManageStatusDefinitionToTerraform(struct!.manageStatusDefinition), - note_definition: dashboardWidgetGroupDefinitionWidgetNoteDefinitionToTerraform(struct!.noteDefinition), - query_table_definition: dashboardWidgetGroupDefinitionWidgetQueryTableDefinitionToTerraform(struct!.queryTableDefinition), - query_value_definition: dashboardWidgetGroupDefinitionWidgetQueryValueDefinitionToTerraform(struct!.queryValueDefinition), - scatterplot_definition: dashboardWidgetGroupDefinitionWidgetScatterplotDefinitionToTerraform(struct!.scatterplotDefinition), - service_level_objective_definition: dashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionToTerraform(struct!.serviceLevelObjectiveDefinition), - servicemap_definition: dashboardWidgetGroupDefinitionWidgetServicemapDefinitionToTerraform(struct!.servicemapDefinition), - sunburst_definition: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionToTerraform(struct!.sunburstDefinition), - timeseries_definition: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionToTerraform(struct!.timeseriesDefinition), - toplist_definition: dashboardWidgetGroupDefinitionWidgetToplistDefinitionToTerraform(struct!.toplistDefinition), - topology_map_definition: dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionToTerraform(struct!.topologyMapDefinition), - trace_service_definition: dashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionToTerraform(struct!.traceServiceDefinition), - treemap_definition: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionToTerraform(struct!.treemapDefinition), - widget_layout: dashboardWidgetGroupDefinitionWidgetWidgetLayoutToTerraform(struct!.widgetLayout), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetGroupDefinitionWidgetOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetGroupDefinitionWidget | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alertGraphDefinition?.internalValue !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.alertGraphDefinition = this._alertGraphDefinition?.internalValue; + internalValueResult.aggregator = this._aggregator; } - if (this._alertValueDefinition?.internalValue !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.alertValueDefinition = this._alertValueDefinition?.internalValue; + internalValueResult.dataSource = this._dataSource; } - if (this._changeDefinition?.internalValue !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.changeDefinition = this._changeDefinition?.internalValue; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; } - if (this._checkStatusDefinition?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.checkStatusDefinition = this._checkStatusDefinition?.internalValue; + internalValueResult.limit = this._limit; } - if (this._distributionDefinition?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.distributionDefinition = this._distributionDefinition?.internalValue; + internalValueResult.metric = this._metric; } - if (this._eventStreamDefinition?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.eventStreamDefinition = this._eventStreamDefinition?.internalValue; + internalValueResult.name = this._name; } - if (this._eventTimelineDefinition?.internalValue !== undefined) { + if (this._sort !== undefined) { hasAnyValues = true; - internalValueResult.eventTimelineDefinition = this._eventTimelineDefinition?.internalValue; + internalValueResult.sort = this._sort; } - if (this._freeTextDefinition?.internalValue !== undefined) { + if (this._tagFilters !== undefined) { hasAnyValues = true; - internalValueResult.freeTextDefinition = this._freeTextDefinition?.internalValue; + internalValueResult.tagFilters = this._tagFilters; } - if (this._geomapDefinition?.internalValue !== undefined) { + if (this._textFilter !== undefined) { hasAnyValues = true; - internalValueResult.geomapDefinition = this._geomapDefinition?.internalValue; + internalValueResult.textFilter = this._textFilter; } - if (this._heatmapDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.heatmapDefinition = this._heatmapDefinition?.internalValue; - } - if (this._hostmapDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.hostmapDefinition = this._hostmapDefinition?.internalValue; - } - if (this._iframeDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.iframeDefinition = this._iframeDefinition?.internalValue; - } - if (this._imageDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.imageDefinition = this._imageDefinition?.internalValue; - } - if (this._listStreamDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.listStreamDefinition = this._listStreamDefinition?.internalValue; - } - if (this._logStreamDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logStreamDefinition = this._logStreamDefinition?.internalValue; - } - if (this._manageStatusDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.manageStatusDefinition = this._manageStatusDefinition?.internalValue; - } - if (this._noteDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.noteDefinition = this._noteDefinition?.internalValue; - } - if (this._queryTableDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.queryTableDefinition = this._queryTableDefinition?.internalValue; - } - if (this._queryValueDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.queryValueDefinition = this._queryValueDefinition?.internalValue; - } - if (this._scatterplotDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.scatterplotDefinition = this._scatterplotDefinition?.internalValue; - } - if (this._serviceLevelObjectiveDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.serviceLevelObjectiveDefinition = this._serviceLevelObjectiveDefinition?.internalValue; - } - if (this._servicemapDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.servicemapDefinition = this._servicemapDefinition?.internalValue; - } - if (this._sunburstDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sunburstDefinition = this._sunburstDefinition?.internalValue; - } - if (this._timeseriesDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.timeseriesDefinition = this._timeseriesDefinition?.internalValue; - } - if (this._toplistDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.toplistDefinition = this._toplistDefinition?.internalValue; - } - if (this._topologyMapDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.topologyMapDefinition = this._topologyMapDefinition?.internalValue; - } - if (this._traceServiceDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.traceServiceDefinition = this._traceServiceDefinition?.internalValue; - } - if (this._treemapDefinition?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.treemapDefinition = this._treemapDefinition?.internalValue; - } - if (this._widgetLayout?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.widgetLayout = this._widgetLayout?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinitionWidget | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alertGraphDefinition.internalValue = undefined; - this._alertValueDefinition.internalValue = undefined; - this._changeDefinition.internalValue = undefined; - this._checkStatusDefinition.internalValue = undefined; - this._distributionDefinition.internalValue = undefined; - this._eventStreamDefinition.internalValue = undefined; - this._eventTimelineDefinition.internalValue = undefined; - this._freeTextDefinition.internalValue = undefined; - this._geomapDefinition.internalValue = undefined; - this._heatmapDefinition.internalValue = undefined; - this._hostmapDefinition.internalValue = undefined; - this._iframeDefinition.internalValue = undefined; - this._imageDefinition.internalValue = undefined; - this._listStreamDefinition.internalValue = undefined; - this._logStreamDefinition.internalValue = undefined; - this._manageStatusDefinition.internalValue = undefined; - this._noteDefinition.internalValue = undefined; - this._queryTableDefinition.internalValue = undefined; - this._queryValueDefinition.internalValue = undefined; - this._scatterplotDefinition.internalValue = undefined; - this._serviceLevelObjectiveDefinition.internalValue = undefined; - this._servicemapDefinition.internalValue = undefined; - this._sunburstDefinition.internalValue = undefined; - this._timeseriesDefinition.internalValue = undefined; - this._toplistDefinition.internalValue = undefined; - this._topologyMapDefinition.internalValue = undefined; - this._traceServiceDefinition.internalValue = undefined; - this._treemapDefinition.internalValue = undefined; - this._widgetLayout.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alertGraphDefinition.internalValue = value.alertGraphDefinition; - this._alertValueDefinition.internalValue = value.alertValueDefinition; - this._changeDefinition.internalValue = value.changeDefinition; - this._checkStatusDefinition.internalValue = value.checkStatusDefinition; - this._distributionDefinition.internalValue = value.distributionDefinition; - this._eventStreamDefinition.internalValue = value.eventStreamDefinition; - this._eventTimelineDefinition.internalValue = value.eventTimelineDefinition; - this._freeTextDefinition.internalValue = value.freeTextDefinition; - this._geomapDefinition.internalValue = value.geomapDefinition; - this._heatmapDefinition.internalValue = value.heatmapDefinition; - this._hostmapDefinition.internalValue = value.hostmapDefinition; - this._iframeDefinition.internalValue = value.iframeDefinition; - this._imageDefinition.internalValue = value.imageDefinition; - this._listStreamDefinition.internalValue = value.listStreamDefinition; - this._logStreamDefinition.internalValue = value.logStreamDefinition; - this._manageStatusDefinition.internalValue = value.manageStatusDefinition; - this._noteDefinition.internalValue = value.noteDefinition; - this._queryTableDefinition.internalValue = value.queryTableDefinition; - this._queryValueDefinition.internalValue = value.queryValueDefinition; - this._scatterplotDefinition.internalValue = value.scatterplotDefinition; - this._serviceLevelObjectiveDefinition.internalValue = value.serviceLevelObjectiveDefinition; - this._servicemapDefinition.internalValue = value.servicemapDefinition; - this._sunburstDefinition.internalValue = value.sunburstDefinition; - this._timeseriesDefinition.internalValue = value.timeseriesDefinition; - this._toplistDefinition.internalValue = value.toplistDefinition; - this._topologyMapDefinition.internalValue = value.topologyMapDefinition; - this._traceServiceDefinition.internalValue = value.traceServiceDefinition; - this._treemapDefinition.internalValue = value.treemapDefinition; - this._widgetLayout.internalValue = value.widgetLayout; - } - } - - // id - computed: true, optional: false, required: false - public get id() { - return this.getNumberAttribute('id'); - } - - // alert_graph_definition - computed: false, optional: true, required: false - private _alertGraphDefinition = new DashboardWidgetGroupDefinitionWidgetAlertGraphDefinitionOutputReference(this, "alert_graph_definition"); - public get alertGraphDefinition() { - return this._alertGraphDefinition; - } - public putAlertGraphDefinition(value: DashboardWidgetGroupDefinitionWidgetAlertGraphDefinition) { - this._alertGraphDefinition.internalValue = value; - } - public resetAlertGraphDefinition() { - this._alertGraphDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get alertGraphDefinitionInput() { - return this._alertGraphDefinition.internalValue; - } - - // alert_value_definition - computed: false, optional: true, required: false - private _alertValueDefinition = new DashboardWidgetGroupDefinitionWidgetAlertValueDefinitionOutputReference(this, "alert_value_definition"); - public get alertValueDefinition() { - return this._alertValueDefinition; - } - public putAlertValueDefinition(value: DashboardWidgetGroupDefinitionWidgetAlertValueDefinition) { - this._alertValueDefinition.internalValue = value; - } - public resetAlertValueDefinition() { - this._alertValueDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get alertValueDefinitionInput() { - return this._alertValueDefinition.internalValue; - } - - // change_definition - computed: false, optional: true, required: false - private _changeDefinition = new DashboardWidgetGroupDefinitionWidgetChangeDefinitionOutputReference(this, "change_definition"); - public get changeDefinition() { - return this._changeDefinition; - } - public putChangeDefinition(value: DashboardWidgetGroupDefinitionWidgetChangeDefinition) { - this._changeDefinition.internalValue = value; - } - public resetChangeDefinition() { - this._changeDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get changeDefinitionInput() { - return this._changeDefinition.internalValue; - } - - // check_status_definition - computed: false, optional: true, required: false - private _checkStatusDefinition = new DashboardWidgetGroupDefinitionWidgetCheckStatusDefinitionOutputReference(this, "check_status_definition"); - public get checkStatusDefinition() { - return this._checkStatusDefinition; - } - public putCheckStatusDefinition(value: DashboardWidgetGroupDefinitionWidgetCheckStatusDefinition) { - this._checkStatusDefinition.internalValue = value; - } - public resetCheckStatusDefinition() { - this._checkStatusDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get checkStatusDefinitionInput() { - return this._checkStatusDefinition.internalValue; - } - - // distribution_definition - computed: false, optional: true, required: false - private _distributionDefinition = new DashboardWidgetGroupDefinitionWidgetDistributionDefinitionOutputReference(this, "distribution_definition"); - public get distributionDefinition() { - return this._distributionDefinition; - } - public putDistributionDefinition(value: DashboardWidgetGroupDefinitionWidgetDistributionDefinition) { - this._distributionDefinition.internalValue = value; - } - public resetDistributionDefinition() { - this._distributionDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get distributionDefinitionInput() { - return this._distributionDefinition.internalValue; - } - - // event_stream_definition - computed: false, optional: true, required: false - private _eventStreamDefinition = new DashboardWidgetGroupDefinitionWidgetEventStreamDefinitionOutputReference(this, "event_stream_definition"); - public get eventStreamDefinition() { - return this._eventStreamDefinition; - } - public putEventStreamDefinition(value: DashboardWidgetGroupDefinitionWidgetEventStreamDefinition) { - this._eventStreamDefinition.internalValue = value; - } - public resetEventStreamDefinition() { - this._eventStreamDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get eventStreamDefinitionInput() { - return this._eventStreamDefinition.internalValue; - } - - // event_timeline_definition - computed: false, optional: true, required: false - private _eventTimelineDefinition = new DashboardWidgetGroupDefinitionWidgetEventTimelineDefinitionOutputReference(this, "event_timeline_definition"); - public get eventTimelineDefinition() { - return this._eventTimelineDefinition; - } - public putEventTimelineDefinition(value: DashboardWidgetGroupDefinitionWidgetEventTimelineDefinition) { - this._eventTimelineDefinition.internalValue = value; - } - public resetEventTimelineDefinition() { - this._eventTimelineDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get eventTimelineDefinitionInput() { - return this._eventTimelineDefinition.internalValue; - } - - // free_text_definition - computed: false, optional: true, required: false - private _freeTextDefinition = new DashboardWidgetGroupDefinitionWidgetFreeTextDefinitionOutputReference(this, "free_text_definition"); - public get freeTextDefinition() { - return this._freeTextDefinition; - } - public putFreeTextDefinition(value: DashboardWidgetGroupDefinitionWidgetFreeTextDefinition) { - this._freeTextDefinition.internalValue = value; - } - public resetFreeTextDefinition() { - this._freeTextDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get freeTextDefinitionInput() { - return this._freeTextDefinition.internalValue; - } - - // geomap_definition - computed: false, optional: true, required: false - private _geomapDefinition = new DashboardWidgetGroupDefinitionWidgetGeomapDefinitionOutputReference(this, "geomap_definition"); - public get geomapDefinition() { - return this._geomapDefinition; - } - public putGeomapDefinition(value: DashboardWidgetGroupDefinitionWidgetGeomapDefinition) { - this._geomapDefinition.internalValue = value; - } - public resetGeomapDefinition() { - this._geomapDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get geomapDefinitionInput() { - return this._geomapDefinition.internalValue; - } - - // heatmap_definition - computed: false, optional: true, required: false - private _heatmapDefinition = new DashboardWidgetGroupDefinitionWidgetHeatmapDefinitionOutputReference(this, "heatmap_definition"); - public get heatmapDefinition() { - return this._heatmapDefinition; - } - public putHeatmapDefinition(value: DashboardWidgetGroupDefinitionWidgetHeatmapDefinition) { - this._heatmapDefinition.internalValue = value; - } - public resetHeatmapDefinition() { - this._heatmapDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get heatmapDefinitionInput() { - return this._heatmapDefinition.internalValue; - } - - // hostmap_definition - computed: false, optional: true, required: false - private _hostmapDefinition = new DashboardWidgetGroupDefinitionWidgetHostmapDefinitionOutputReference(this, "hostmap_definition"); - public get hostmapDefinition() { - return this._hostmapDefinition; - } - public putHostmapDefinition(value: DashboardWidgetGroupDefinitionWidgetHostmapDefinition) { - this._hostmapDefinition.internalValue = value; - } - public resetHostmapDefinition() { - this._hostmapDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get hostmapDefinitionInput() { - return this._hostmapDefinition.internalValue; - } - - // iframe_definition - computed: false, optional: true, required: false - private _iframeDefinition = new DashboardWidgetGroupDefinitionWidgetIframeDefinitionOutputReference(this, "iframe_definition"); - public get iframeDefinition() { - return this._iframeDefinition; - } - public putIframeDefinition(value: DashboardWidgetGroupDefinitionWidgetIframeDefinition) { - this._iframeDefinition.internalValue = value; - } - public resetIframeDefinition() { - this._iframeDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get iframeDefinitionInput() { - return this._iframeDefinition.internalValue; - } - - // image_definition - computed: false, optional: true, required: false - private _imageDefinition = new DashboardWidgetGroupDefinitionWidgetImageDefinitionOutputReference(this, "image_definition"); - public get imageDefinition() { - return this._imageDefinition; - } - public putImageDefinition(value: DashboardWidgetGroupDefinitionWidgetImageDefinition) { - this._imageDefinition.internalValue = value; - } - public resetImageDefinition() { - this._imageDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get imageDefinitionInput() { - return this._imageDefinition.internalValue; - } - - // list_stream_definition - computed: false, optional: true, required: false - private _listStreamDefinition = new DashboardWidgetGroupDefinitionWidgetListStreamDefinitionOutputReference(this, "list_stream_definition"); - public get listStreamDefinition() { - return this._listStreamDefinition; - } - public putListStreamDefinition(value: DashboardWidgetGroupDefinitionWidgetListStreamDefinition) { - this._listStreamDefinition.internalValue = value; - } - public resetListStreamDefinition() { - this._listStreamDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get listStreamDefinitionInput() { - return this._listStreamDefinition.internalValue; - } - - // log_stream_definition - computed: false, optional: true, required: false - private _logStreamDefinition = new DashboardWidgetGroupDefinitionWidgetLogStreamDefinitionOutputReference(this, "log_stream_definition"); - public get logStreamDefinition() { - return this._logStreamDefinition; - } - public putLogStreamDefinition(value: DashboardWidgetGroupDefinitionWidgetLogStreamDefinition) { - this._logStreamDefinition.internalValue = value; - } - public resetLogStreamDefinition() { - this._logStreamDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logStreamDefinitionInput() { - return this._logStreamDefinition.internalValue; - } - - // manage_status_definition - computed: false, optional: true, required: false - private _manageStatusDefinition = new DashboardWidgetGroupDefinitionWidgetManageStatusDefinitionOutputReference(this, "manage_status_definition"); - public get manageStatusDefinition() { - return this._manageStatusDefinition; - } - public putManageStatusDefinition(value: DashboardWidgetGroupDefinitionWidgetManageStatusDefinition) { - this._manageStatusDefinition.internalValue = value; - } - public resetManageStatusDefinition() { - this._manageStatusDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get manageStatusDefinitionInput() { - return this._manageStatusDefinition.internalValue; - } - - // note_definition - computed: false, optional: true, required: false - private _noteDefinition = new DashboardWidgetGroupDefinitionWidgetNoteDefinitionOutputReference(this, "note_definition"); - public get noteDefinition() { - return this._noteDefinition; - } - public putNoteDefinition(value: DashboardWidgetGroupDefinitionWidgetNoteDefinition) { - this._noteDefinition.internalValue = value; - } - public resetNoteDefinition() { - this._noteDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get noteDefinitionInput() { - return this._noteDefinition.internalValue; - } - - // query_table_definition - computed: false, optional: true, required: false - private _queryTableDefinition = new DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionOutputReference(this, "query_table_definition"); - public get queryTableDefinition() { - return this._queryTableDefinition; - } - public putQueryTableDefinition(value: DashboardWidgetGroupDefinitionWidgetQueryTableDefinition) { - this._queryTableDefinition.internalValue = value; - } - public resetQueryTableDefinition() { - this._queryTableDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get queryTableDefinitionInput() { - return this._queryTableDefinition.internalValue; - } - - // query_value_definition - computed: false, optional: true, required: false - private _queryValueDefinition = new DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionOutputReference(this, "query_value_definition"); - public get queryValueDefinition() { - return this._queryValueDefinition; - } - public putQueryValueDefinition(value: DashboardWidgetGroupDefinitionWidgetQueryValueDefinition) { - this._queryValueDefinition.internalValue = value; - } - public resetQueryValueDefinition() { - this._queryValueDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get queryValueDefinitionInput() { - return this._queryValueDefinition.internalValue; - } - - // scatterplot_definition - computed: false, optional: true, required: false - private _scatterplotDefinition = new DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionOutputReference(this, "scatterplot_definition"); - public get scatterplotDefinition() { - return this._scatterplotDefinition; - } - public putScatterplotDefinition(value: DashboardWidgetGroupDefinitionWidgetScatterplotDefinition) { - this._scatterplotDefinition.internalValue = value; - } - public resetScatterplotDefinition() { - this._scatterplotDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get scatterplotDefinitionInput() { - return this._scatterplotDefinition.internalValue; - } - - // service_level_objective_definition - computed: false, optional: true, required: false - private _serviceLevelObjectiveDefinition = new DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionOutputReference(this, "service_level_objective_definition"); - public get serviceLevelObjectiveDefinition() { - return this._serviceLevelObjectiveDefinition; - } - public putServiceLevelObjectiveDefinition(value: DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition) { - this._serviceLevelObjectiveDefinition.internalValue = value; - } - public resetServiceLevelObjectiveDefinition() { - this._serviceLevelObjectiveDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get serviceLevelObjectiveDefinitionInput() { - return this._serviceLevelObjectiveDefinition.internalValue; - } - - // servicemap_definition - computed: false, optional: true, required: false - private _servicemapDefinition = new DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputReference(this, "servicemap_definition"); - public get servicemapDefinition() { - return this._servicemapDefinition; - } - public putServicemapDefinition(value: DashboardWidgetGroupDefinitionWidgetServicemapDefinition) { - this._servicemapDefinition.internalValue = value; - } - public resetServicemapDefinition() { - this._servicemapDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get servicemapDefinitionInput() { - return this._servicemapDefinition.internalValue; - } - - // sunburst_definition - computed: false, optional: true, required: false - private _sunburstDefinition = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference(this, "sunburst_definition"); - public get sunburstDefinition() { - return this._sunburstDefinition; - } - public putSunburstDefinition(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinition) { - this._sunburstDefinition.internalValue = value; - } - public resetSunburstDefinition() { - this._sunburstDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get sunburstDefinitionInput() { - return this._sunburstDefinition.internalValue; - } - - // timeseries_definition - computed: false, optional: true, required: false - private _timeseriesDefinition = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference(this, "timeseries_definition"); - public get timeseriesDefinition() { - return this._timeseriesDefinition; - } - public putTimeseriesDefinition(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition) { - this._timeseriesDefinition.internalValue = value; - } - public resetTimeseriesDefinition() { - this._timeseriesDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeseriesDefinitionInput() { - return this._timeseriesDefinition.internalValue; - } - - // toplist_definition - computed: false, optional: true, required: false - private _toplistDefinition = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference(this, "toplist_definition"); - public get toplistDefinition() { - return this._toplistDefinition; - } - public putToplistDefinition(value: DashboardWidgetGroupDefinitionWidgetToplistDefinition) { - this._toplistDefinition.internalValue = value; - } - public resetToplistDefinition() { - this._toplistDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get toplistDefinitionInput() { - return this._toplistDefinition.internalValue; - } - - // topology_map_definition - computed: false, optional: true, required: false - private _topologyMapDefinition = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionOutputReference(this, "topology_map_definition"); - public get topologyMapDefinition() { - return this._topologyMapDefinition; - } - public putTopologyMapDefinition(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition) { - this._topologyMapDefinition.internalValue = value; - } - public resetTopologyMapDefinition() { - this._topologyMapDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get topologyMapDefinitionInput() { - return this._topologyMapDefinition.internalValue; - } - - // trace_service_definition - computed: false, optional: true, required: false - private _traceServiceDefinition = new DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputReference(this, "trace_service_definition"); - public get traceServiceDefinition() { - return this._traceServiceDefinition; - } - public putTraceServiceDefinition(value: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition) { - this._traceServiceDefinition.internalValue = value; - } - public resetTraceServiceDefinition() { - this._traceServiceDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get traceServiceDefinitionInput() { - return this._traceServiceDefinition.internalValue; - } - - // treemap_definition - computed: false, optional: true, required: false - private _treemapDefinition = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReference(this, "treemap_definition"); - public get treemapDefinition() { - return this._treemapDefinition; - } - public putTreemapDefinition(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinition) { - this._treemapDefinition.internalValue = value; - } - public resetTreemapDefinition() { - this._treemapDefinition.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get treemapDefinitionInput() { - return this._treemapDefinition.internalValue; - } - - // widget_layout - computed: false, optional: true, required: false - private _widgetLayout = new DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference(this, "widget_layout"); - public get widgetLayout() { - return this._widgetLayout; - } - public putWidgetLayout(value: DashboardWidgetGroupDefinitionWidgetWidgetLayout) { - this._widgetLayout.internalValue = value; - } - public resetWidgetLayout() { - this._widgetLayout.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get widgetLayoutInput() { - return this._widgetLayout.internalValue; - } -} - -export class DashboardWidgetGroupDefinitionWidgetList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetGroupDefinitionWidget[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetGroupDefinitionWidgetOutputReference { - return new DashboardWidgetGroupDefinitionWidgetOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetGroupDefinition { - /** - * The background color of the group title, options: `vivid_blue`, `vivid_purple`, `vivid_pink`, `vivid_orange`, `vivid_yellow`, `vivid_green`, `blue`, `purple`, `pink`, `orange`, `yellow`, `green`, `gray` or `white` - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#background_color Dashboard#background_color} - */ - readonly backgroundColor?: string; - /** - * The image URL to display as a banner for the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#banner_img Dashboard#banner_img} - */ - readonly bannerImg?: string; - /** - * The layout type of the group. Valid values are `ordered`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#layout_type Dashboard#layout_type} - */ - readonly layoutType: string; - /** - * Whether to show the title or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_title Dashboard#show_title} - */ - readonly showTitle?: boolean | cdktf.IResolvable; - /** - * The title of the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * widget block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#widget Dashboard#widget} - */ - readonly widget?: DashboardWidgetGroupDefinitionWidget[] | cdktf.IResolvable; -} - -export function dashboardWidgetGroupDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionOutputReference | DashboardWidgetGroupDefinition): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - background_color: cdktf.stringToTerraform(struct!.backgroundColor), - banner_img: cdktf.stringToTerraform(struct!.bannerImg), - layout_type: cdktf.stringToTerraform(struct!.layoutType), - show_title: cdktf.booleanToTerraform(struct!.showTitle), - title: cdktf.stringToTerraform(struct!.title), - widget: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToTerraform, true)(struct!.widget), - } -} - -export class DashboardWidgetGroupDefinitionOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetGroupDefinition | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._backgroundColor !== undefined) { - hasAnyValues = true; - internalValueResult.backgroundColor = this._backgroundColor; - } - if (this._bannerImg !== undefined) { - hasAnyValues = true; - internalValueResult.bannerImg = this._bannerImg; - } - if (this._layoutType !== undefined) { - hasAnyValues = true; - internalValueResult.layoutType = this._layoutType; - } - if (this._showTitle !== undefined) { - hasAnyValues = true; - internalValueResult.showTitle = this._showTitle; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._widget?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.widget = this._widget?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetGroupDefinition | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._backgroundColor = undefined; - this._bannerImg = undefined; - this._layoutType = undefined; - this._showTitle = undefined; - this._title = undefined; - this._widget.internalValue = undefined; + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._backgroundColor = value.backgroundColor; - this._bannerImg = value.bannerImg; - this._layoutType = value.layoutType; - this._showTitle = value.showTitle; - this._title = value.title; - this._widget.internalValue = value.widget; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // background_color - computed: false, optional: true, required: false - private _backgroundColor?: string; - public get backgroundColor() { - return this.getStringAttribute('background_color'); - } - public set backgroundColor(value: string) { - this._backgroundColor = value; - } - public resetBackgroundColor() { - this._backgroundColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get backgroundColorInput() { - return this._backgroundColor; - } - - // banner_img - computed: false, optional: true, required: false - private _bannerImg?: string; - public get bannerImg() { - return this.getStringAttribute('banner_img'); - } - public set bannerImg(value: string) { - this._bannerImg = value; - } - public resetBannerImg() { - this._bannerImg = undefined; - } - // Temporarily expose input value. Use with caution. - public get bannerImgInput() { - return this._bannerImg; - } - - // layout_type - computed: false, optional: false, required: true - private _layoutType?: string; - public get layoutType() { - return this.getStringAttribute('layout_type'); - } - public set layoutType(value: string) { - this._layoutType = value; - } - // Temporarily expose input value. Use with caution. - public get layoutTypeInput() { - return this._layoutType; - } - - // show_title - computed: false, optional: true, required: false - private _showTitle?: boolean | cdktf.IResolvable; - public get showTitle() { - return this.getBooleanAttribute('show_title'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set showTitle(value: boolean | cdktf.IResolvable) { - this._showTitle = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetShowTitle() { - this._showTitle = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get showTitleInput() { - return this._showTitle; + public get aggregatorInput() { + return this._aggregator; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetTitle() { - this._title = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get dataSourceInput() { + return this._dataSource; } - // widget - computed: false, optional: true, required: false - private _widget = new DashboardWidgetGroupDefinitionWidgetList(this, "widget", false); - public get widget() { - return this._widget; + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); } - public putWidget(value: DashboardWidgetGroupDefinitionWidget[] | cdktf.IResolvable) { - this._widget.internalValue = value; + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; } - public resetWidget() { - this._widget.internalValue = undefined; + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get widgetInput() { - return this._widget.internalValue; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } -} -export interface DashboardWidgetHeatmapDefinitionCustomLink { - /** - * The flag for toggling context menu link visibility. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} - */ - readonly isHidden?: boolean | cdktf.IResolvable; - /** - * The label for the custom link URL. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; - /** - * The URL of the custom link. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} - */ - readonly link?: string; - /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} - */ - readonly overrideLabel?: string; -} -export function dashboardWidgetHeatmapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetHeatmapDefinitionCustomLink | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + public set limit(value: number) { + this._limit = value; } -} - -export class DashboardWidgetHeatmapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public resetLimit() { + this._limit = undefined; } - - public get internalValue(): DashboardWidgetHeatmapDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._isHidden !== undefined) { - hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._link !== undefined) { - hasAnyValues = true; - internalValueResult.link = this._link; - } - if (this._overrideLabel !== undefined) { - hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionCustomLink | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; - } + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + public set metric(value: string) { + this._metric = value; } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; } - public resetIsHidden() { - this._isHidden = undefined; + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get nameInput() { + return this._name; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); } - public set label(value: string) { - this._label = value; + public set sort(value: string) { + this._sort = value; } - public resetLabel() { - this._label = undefined; + public resetSort() { + this._sort = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get sortInput() { + return this._sort; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); } - public set link(value: string) { - this._link = value; + public set tagFilters(value: string[]) { + this._tagFilters = value; } - public resetLink() { - this._link = undefined; + public resetTagFilters() { + this._tagFilters = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get tagFiltersInput() { + return this._tagFilters; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public set textFilter(value: string) { + this._textFilter = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetTextFilter() { + this._textFilter = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get textFilterInput() { + return this._textFilter; } } - -export class DashboardWidgetHeatmapDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionCustomLink[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * apm_dependency_stats_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly apmDependencyStatsQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery; /** - * @param index the index of the item to return + * apm_resource_stats_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - public get(index: number): DashboardWidgetHeatmapDefinitionCustomLinkOutputReference { - return new DashboardWidgetHeatmapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHeatmapDefinitionEvent { + readonly apmResourceStatsQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery; /** - * The event query to use in the widget. + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly q: string; + readonly eventQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery; /** - * The execution method for multi-value filters. + * metric_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tags_execution Dashboard#tags_execution} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} */ - readonly tagsExecution?: string; + readonly metricQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetHeatmapDefinitionEventToTerraform(struct?: DashboardWidgetHeatmapDefinitionEvent | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - tags_execution: cdktf.stringToTerraform(struct!.tagsExecution), + apm_dependency_stats_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetHeatmapDefinitionEventOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -2915,29 +1931,44 @@ export class DashboardWidgetHeatmapDefinitionEventOutputReference extends cdktf. super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionEvent | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.q = this._q; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._tagsExecution !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.tagsExecution = this._tagsExecution; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; + } + if (this._eventQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.eventQuery = this._eventQuery?.internalValue; + } + if (this._metricQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.metricQuery = this._metricQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionEvent | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._q = undefined; - this._tagsExecution = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -2946,43 +1977,97 @@ export class DashboardWidgetHeatmapDefinitionEventOutputReference extends cdktf. else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._q = value.q; - this._tagsExecution = value.tagsExecution; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // q - computed: false, optional: false, required: true - private _q?: string; - public get q() { - return this.getStringAttribute('q'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set q(value: string) { - this._q = value; + public putApmDependencyStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; + } + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // tags_execution - computed: false, optional: true, required: false - private _tagsExecution?: string; - public get tagsExecution() { - return this.getStringAttribute('tags_execution'); + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public set tagsExecution(value: string) { - this._tagsExecution = value; + public putApmResourceStatsQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - public resetTagsExecution() { - this._tagsExecution = undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get tagsExecutionInput() { - return this._tagsExecution; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; + } + + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; + } + public putEventQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; + } + public resetEventQuery() { + this._eventQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get eventQueryInput() { + return this._eventQuery.internalValue; + } + + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; + } + public putMetricQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; + } + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricQueryInput() { + return this._metricQuery.internalValue; + } + + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } } -export class DashboardWidgetHeatmapDefinitionEventList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionEvent[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -2996,166 +2081,165 @@ export class DashboardWidgetHeatmapDefinitionEventList extends cdktf.ComplexList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHeatmapDefinitionEventOutputReference { - return new DashboardWidgetHeatmapDefinitionEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest { /** - * The facet name. + * formula block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} */ - readonly facet?: string; + readonly formula?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula[] | cdktf.IResolvable; /** - * Define the time interval in seconds. + * query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery[] | cdktf.IResolvable; } -export function dashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + formula: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaToTerraform, true)(struct!.formula), + query: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryToTerraform, true)(struct!.query), } } -export class DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._formula?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.formula = this._formula?.internalValue; } - if (this._interval !== undefined) { + if (this._query?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.query = this._query?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._formula.internalValue = undefined; + this._query.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._formula.internalValue = value.formula; + this._query.internalValue = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - public set facet(value: string) { - this._facet = value; + public putFormula(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetFormula() { + this._formula.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get formulaInput() { + return this._formula.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public set interval(value: number) { - this._interval = value; + public putQuery(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query.internalValue; } } -export interface DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery { + +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest[] | cdktf.IResolvable + /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly aggregation: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The facet name. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestOutputReference { + return new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetGroupDefinitionWidgetTreemapDefinition { + /** + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly facet?: string; + readonly title?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly order: string; + readonly request?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery): any { +export function dashboardWidgetGroupDefinitionWidgetTreemapDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReference | DashboardWidgetGroupDefinitionWidgetTreemapDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + title: cdktf.stringToTerraform(struct!.title), + request: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3166,272 +2250,459 @@ export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidgetTreemapDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.title = this._title; } - if (this._order !== undefined) { + if (this._request?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._title = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._title = value.title; + this._request.internalValue = value.request; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set facet(value: string) { - this._facet = value; + public set title(value: string) { + this._title = value; } - public resetFacet() { - this._facet = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get titleInput() { + return this._title; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequestList(this, "request", false); + public get request() { + return this._request; } - public set order(value: string) { - this._order = value; + public putRequest(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get requestInput() { + return this._request.internalValue; } } -export interface DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy { +export interface DashboardWidgetGroupDefinitionWidgetWidgetLayout { /** - * The facet name. + * The height of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#height Dashboard#height} */ - readonly facet?: string; + readonly height: number; /** - * The maximum number of items in the group. + * Whether the widget should be the first one on the second column in high density or not. Only for the new dashboard layout and only one widget in the dashboard should have this property set to `true`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_column_break Dashboard#is_column_break} */ - readonly limit?: number; + readonly isColumnBreak?: boolean | cdktf.IResolvable; /** - * sort_query block + * The width of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#width Dashboard#width} */ - readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery; + readonly width: number; + /** + * The position of the widget on the x (horizontal) axis. Should be greater than or equal to 0. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#x Dashboard#x} + */ + readonly x: number; + /** + * The position of the widget on the y (vertical) axis. Should be greater than or equal to 0. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#y Dashboard#y} + */ + readonly y: number; } -export function dashboardWidgetHeatmapDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetWidgetLayoutToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference | DashboardWidgetGroupDefinitionWidgetWidgetLayout): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + height: cdktf.numberToTerraform(struct!.height), + is_column_break: cdktf.booleanToTerraform(struct!.isColumnBreak), + width: cdktf.numberToTerraform(struct!.width), + x: cdktf.numberToTerraform(struct!.x), + y: cdktf.numberToTerraform(struct!.y), } } -export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinitionWidgetWidgetLayout | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._height !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.height = this._height; } - if (this._limit !== undefined) { + if (this._isColumnBreak !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.isColumnBreak = this._isColumnBreak; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._width !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.width = this._width; + } + if (this._x !== undefined) { + hasAnyValues = true; + internalValueResult.x = this._x; + } + if (this._y !== undefined) { + hasAnyValues = true; + internalValueResult.y = this._y; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidgetWidgetLayout | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._height = undefined; + this._isColumnBreak = undefined; + this._width = undefined; + this._x = undefined; + this._y = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._height = value.height; + this._isColumnBreak = value.isColumnBreak; + this._width = value.width; + this._x = value.x; + this._y = value.y; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // height - computed: false, optional: false, required: true + private _height?: number; + public get height() { + return this.getNumberAttribute('height'); + } + public set height(value: number) { + this._height = value; + } + // Temporarily expose input value. Use with caution. + public get heightInput() { + return this._height; + } + + // is_column_break - computed: false, optional: true, required: false + private _isColumnBreak?: boolean | cdktf.IResolvable; + public get isColumnBreak() { + return this.getBooleanAttribute('is_column_break'); + } + public set isColumnBreak(value: boolean | cdktf.IResolvable) { + this._isColumnBreak = value; + } + public resetIsColumnBreak() { + this._isColumnBreak = undefined; + } + // Temporarily expose input value. Use with caution. + public get isColumnBreakInput() { + return this._isColumnBreak; + } + + // width - computed: false, optional: false, required: true + private _width?: number; + public get width() { + return this.getNumberAttribute('width'); } - public resetFacet() { - this._facet = undefined; + public set width(value: number) { + this._width = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get widthInput() { + return this._width; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // x - computed: false, optional: false, required: true + private _x?: number; + public get x() { + return this.getNumberAttribute('x'); } - public resetLimit() { - this._limit = undefined; + public set x(value: number) { + this._x = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get xInput() { + return this._x; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; - } - public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + // y - computed: false, optional: false, required: true + private _y?: number; + public get y() { + return this.getNumberAttribute('y'); } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public set y(value: number) { + this._y = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get yInput() { + return this._y; } } - -export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetGroupDefinitionWidget { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * alert_graph_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alert_graph_definition Dashboard#alert_graph_definition} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly alertGraphDefinition?: DashboardWidgetGroupDefinitionWidgetAlertGraphDefinition; /** - * @param index the index of the item to return + * alert_value_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alert_value_definition Dashboard#alert_value_definition} */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute { + readonly alertValueDefinition?: DashboardWidgetGroupDefinitionWidgetAlertValueDefinition; /** - * The aggregation method. + * change_definition block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#change_definition Dashboard#change_definition} */ - readonly aggregation: string; + readonly changeDefinition?: DashboardWidgetGroupDefinitionWidgetChangeDefinition; /** - * The facet name. + * check_status_definition block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#check_status_definition Dashboard#check_status_definition} */ - readonly facet?: string; + readonly checkStatusDefinition?: DashboardWidgetGroupDefinitionWidgetCheckStatusDefinition; /** - * Define the time interval in seconds. + * distribution_definition block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#distribution_definition Dashboard#distribution_definition} */ - readonly interval?: number; + readonly distributionDefinition?: DashboardWidgetGroupDefinitionWidgetDistributionDefinition; + /** + * event_stream_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_stream_definition Dashboard#event_stream_definition} + */ + readonly eventStreamDefinition?: DashboardWidgetGroupDefinitionWidgetEventStreamDefinition; + /** + * event_timeline_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_timeline_definition Dashboard#event_timeline_definition} + */ + readonly eventTimelineDefinition?: DashboardWidgetGroupDefinitionWidgetEventTimelineDefinition; + /** + * free_text_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#free_text_definition Dashboard#free_text_definition} + */ + readonly freeTextDefinition?: DashboardWidgetGroupDefinitionWidgetFreeTextDefinition; + /** + * geomap_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#geomap_definition Dashboard#geomap_definition} + */ + readonly geomapDefinition?: DashboardWidgetGroupDefinitionWidgetGeomapDefinition; + /** + * heatmap_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#heatmap_definition Dashboard#heatmap_definition} + */ + readonly heatmapDefinition?: DashboardWidgetGroupDefinitionWidgetHeatmapDefinition; + /** + * hostmap_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hostmap_definition Dashboard#hostmap_definition} + */ + readonly hostmapDefinition?: DashboardWidgetGroupDefinitionWidgetHostmapDefinition; + /** + * iframe_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#iframe_definition Dashboard#iframe_definition} + */ + readonly iframeDefinition?: DashboardWidgetGroupDefinitionWidgetIframeDefinition; + /** + * image_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_definition Dashboard#image_definition} + */ + readonly imageDefinition?: DashboardWidgetGroupDefinitionWidgetImageDefinition; + /** + * list_stream_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#list_stream_definition Dashboard#list_stream_definition} + */ + readonly listStreamDefinition?: DashboardWidgetGroupDefinitionWidgetListStreamDefinition; + /** + * log_stream_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_stream_definition Dashboard#log_stream_definition} + */ + readonly logStreamDefinition?: DashboardWidgetGroupDefinitionWidgetLogStreamDefinition; + /** + * manage_status_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#manage_status_definition Dashboard#manage_status_definition} + */ + readonly manageStatusDefinition?: DashboardWidgetGroupDefinitionWidgetManageStatusDefinition; + /** + * note_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#note_definition Dashboard#note_definition} + */ + readonly noteDefinition?: DashboardWidgetGroupDefinitionWidgetNoteDefinition; + /** + * query_table_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_table_definition Dashboard#query_table_definition} + */ + readonly queryTableDefinition?: DashboardWidgetGroupDefinitionWidgetQueryTableDefinition; + /** + * query_value_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_value_definition Dashboard#query_value_definition} + */ + readonly queryValueDefinition?: DashboardWidgetGroupDefinitionWidgetQueryValueDefinition; + /** + * scatterplot_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scatterplot_definition Dashboard#scatterplot_definition} + */ + readonly scatterplotDefinition?: DashboardWidgetGroupDefinitionWidgetScatterplotDefinition; + /** + * service_level_objective_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service_level_objective_definition Dashboard#service_level_objective_definition} + */ + readonly serviceLevelObjectiveDefinition?: DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition; + /** + * servicemap_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#servicemap_definition Dashboard#servicemap_definition} + */ + readonly servicemapDefinition?: DashboardWidgetGroupDefinitionWidgetServicemapDefinition; + /** + * slo_list_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#slo_list_definition Dashboard#slo_list_definition} + */ + readonly sloListDefinition?: DashboardWidgetGroupDefinitionWidgetSloListDefinition; + /** + * sunburst_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sunburst_definition Dashboard#sunburst_definition} + */ + readonly sunburstDefinition?: DashboardWidgetGroupDefinitionWidgetSunburstDefinition; + /** + * timeseries_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeseries_definition Dashboard#timeseries_definition} + */ + readonly timeseriesDefinition?: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition; + /** + * toplist_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#toplist_definition Dashboard#toplist_definition} + */ + readonly toplistDefinition?: DashboardWidgetGroupDefinitionWidgetToplistDefinition; + /** + * topology_map_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#topology_map_definition Dashboard#topology_map_definition} + */ + readonly topologyMapDefinition?: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition; + /** + * trace_service_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#trace_service_definition Dashboard#trace_service_definition} + */ + readonly traceServiceDefinition?: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition; + /** + * treemap_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#treemap_definition Dashboard#treemap_definition} + */ + readonly treemapDefinition?: DashboardWidgetGroupDefinitionWidgetTreemapDefinition; + /** + * widget_layout block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#widget_layout Dashboard#widget_layout} + */ + readonly widgetLayout?: DashboardWidgetGroupDefinitionWidgetWidgetLayout; } -export function dashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionWidgetToTerraform(struct?: DashboardWidgetGroupDefinitionWidget | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), - } + return { + alert_graph_definition: dashboardWidgetGroupDefinitionWidgetAlertGraphDefinitionToTerraform(struct!.alertGraphDefinition), + alert_value_definition: dashboardWidgetGroupDefinitionWidgetAlertValueDefinitionToTerraform(struct!.alertValueDefinition), + change_definition: dashboardWidgetGroupDefinitionWidgetChangeDefinitionToTerraform(struct!.changeDefinition), + check_status_definition: dashboardWidgetGroupDefinitionWidgetCheckStatusDefinitionToTerraform(struct!.checkStatusDefinition), + distribution_definition: dashboardWidgetGroupDefinitionWidgetDistributionDefinitionToTerraform(struct!.distributionDefinition), + event_stream_definition: dashboardWidgetGroupDefinitionWidgetEventStreamDefinitionToTerraform(struct!.eventStreamDefinition), + event_timeline_definition: dashboardWidgetGroupDefinitionWidgetEventTimelineDefinitionToTerraform(struct!.eventTimelineDefinition), + free_text_definition: dashboardWidgetGroupDefinitionWidgetFreeTextDefinitionToTerraform(struct!.freeTextDefinition), + geomap_definition: dashboardWidgetGroupDefinitionWidgetGeomapDefinitionToTerraform(struct!.geomapDefinition), + heatmap_definition: dashboardWidgetGroupDefinitionWidgetHeatmapDefinitionToTerraform(struct!.heatmapDefinition), + hostmap_definition: dashboardWidgetGroupDefinitionWidgetHostmapDefinitionToTerraform(struct!.hostmapDefinition), + iframe_definition: dashboardWidgetGroupDefinitionWidgetIframeDefinitionToTerraform(struct!.iframeDefinition), + image_definition: dashboardWidgetGroupDefinitionWidgetImageDefinitionToTerraform(struct!.imageDefinition), + list_stream_definition: dashboardWidgetGroupDefinitionWidgetListStreamDefinitionToTerraform(struct!.listStreamDefinition), + log_stream_definition: dashboardWidgetGroupDefinitionWidgetLogStreamDefinitionToTerraform(struct!.logStreamDefinition), + manage_status_definition: dashboardWidgetGroupDefinitionWidgetManageStatusDefinitionToTerraform(struct!.manageStatusDefinition), + note_definition: dashboardWidgetGroupDefinitionWidgetNoteDefinitionToTerraform(struct!.noteDefinition), + query_table_definition: dashboardWidgetGroupDefinitionWidgetQueryTableDefinitionToTerraform(struct!.queryTableDefinition), + query_value_definition: dashboardWidgetGroupDefinitionWidgetQueryValueDefinitionToTerraform(struct!.queryValueDefinition), + scatterplot_definition: dashboardWidgetGroupDefinitionWidgetScatterplotDefinitionToTerraform(struct!.scatterplotDefinition), + service_level_objective_definition: dashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionToTerraform(struct!.serviceLevelObjectiveDefinition), + servicemap_definition: dashboardWidgetGroupDefinitionWidgetServicemapDefinitionToTerraform(struct!.servicemapDefinition), + slo_list_definition: dashboardWidgetGroupDefinitionWidgetSloListDefinitionToTerraform(struct!.sloListDefinition), + sunburst_definition: dashboardWidgetGroupDefinitionWidgetSunburstDefinitionToTerraform(struct!.sunburstDefinition), + timeseries_definition: dashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionToTerraform(struct!.timeseriesDefinition), + toplist_definition: dashboardWidgetGroupDefinitionWidgetToplistDefinitionToTerraform(struct!.toplistDefinition), + topology_map_definition: dashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionToTerraform(struct!.topologyMapDefinition), + trace_service_definition: dashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionToTerraform(struct!.traceServiceDefinition), + treemap_definition: dashboardWidgetGroupDefinitionWidgetTreemapDefinitionToTerraform(struct!.treemapDefinition), + widget_layout: dashboardWidgetGroupDefinitionWidgetWidgetLayoutToTerraform(struct!.widgetLayout), + } } -export class DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionWidgetOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -3445,34 +2716,169 @@ export class DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetGroupDefinitionWidget | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._alertGraphDefinition?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.alertGraphDefinition = this._alertGraphDefinition?.internalValue; } - if (this._facet !== undefined) { + if (this._alertValueDefinition?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.alertValueDefinition = this._alertValueDefinition?.internalValue; } - if (this._interval !== undefined) { + if (this._changeDefinition?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.changeDefinition = this._changeDefinition?.internalValue; + } + if (this._checkStatusDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.checkStatusDefinition = this._checkStatusDefinition?.internalValue; + } + if (this._distributionDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.distributionDefinition = this._distributionDefinition?.internalValue; + } + if (this._eventStreamDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.eventStreamDefinition = this._eventStreamDefinition?.internalValue; + } + if (this._eventTimelineDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.eventTimelineDefinition = this._eventTimelineDefinition?.internalValue; + } + if (this._freeTextDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.freeTextDefinition = this._freeTextDefinition?.internalValue; + } + if (this._geomapDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.geomapDefinition = this._geomapDefinition?.internalValue; + } + if (this._heatmapDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.heatmapDefinition = this._heatmapDefinition?.internalValue; + } + if (this._hostmapDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.hostmapDefinition = this._hostmapDefinition?.internalValue; + } + if (this._iframeDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.iframeDefinition = this._iframeDefinition?.internalValue; + } + if (this._imageDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.imageDefinition = this._imageDefinition?.internalValue; + } + if (this._listStreamDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.listStreamDefinition = this._listStreamDefinition?.internalValue; + } + if (this._logStreamDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logStreamDefinition = this._logStreamDefinition?.internalValue; + } + if (this._manageStatusDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.manageStatusDefinition = this._manageStatusDefinition?.internalValue; + } + if (this._noteDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.noteDefinition = this._noteDefinition?.internalValue; + } + if (this._queryTableDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.queryTableDefinition = this._queryTableDefinition?.internalValue; + } + if (this._queryValueDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.queryValueDefinition = this._queryValueDefinition?.internalValue; + } + if (this._scatterplotDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.scatterplotDefinition = this._scatterplotDefinition?.internalValue; + } + if (this._serviceLevelObjectiveDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.serviceLevelObjectiveDefinition = this._serviceLevelObjectiveDefinition?.internalValue; + } + if (this._servicemapDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.servicemapDefinition = this._servicemapDefinition?.internalValue; + } + if (this._sloListDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sloListDefinition = this._sloListDefinition?.internalValue; + } + if (this._sunburstDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sunburstDefinition = this._sunburstDefinition?.internalValue; + } + if (this._timeseriesDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.timeseriesDefinition = this._timeseriesDefinition?.internalValue; + } + if (this._toplistDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.toplistDefinition = this._toplistDefinition?.internalValue; + } + if (this._topologyMapDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.topologyMapDefinition = this._topologyMapDefinition?.internalValue; + } + if (this._traceServiceDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.traceServiceDefinition = this._traceServiceDefinition?.internalValue; + } + if (this._treemapDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.treemapDefinition = this._treemapDefinition?.internalValue; + } + if (this._widgetLayout?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.widgetLayout = this._widgetLayout?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinitionWidget | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._alertGraphDefinition.internalValue = undefined; + this._alertValueDefinition.internalValue = undefined; + this._changeDefinition.internalValue = undefined; + this._checkStatusDefinition.internalValue = undefined; + this._distributionDefinition.internalValue = undefined; + this._eventStreamDefinition.internalValue = undefined; + this._eventTimelineDefinition.internalValue = undefined; + this._freeTextDefinition.internalValue = undefined; + this._geomapDefinition.internalValue = undefined; + this._heatmapDefinition.internalValue = undefined; + this._hostmapDefinition.internalValue = undefined; + this._iframeDefinition.internalValue = undefined; + this._imageDefinition.internalValue = undefined; + this._listStreamDefinition.internalValue = undefined; + this._logStreamDefinition.internalValue = undefined; + this._manageStatusDefinition.internalValue = undefined; + this._noteDefinition.internalValue = undefined; + this._queryTableDefinition.internalValue = undefined; + this._queryValueDefinition.internalValue = undefined; + this._scatterplotDefinition.internalValue = undefined; + this._serviceLevelObjectiveDefinition.internalValue = undefined; + this._servicemapDefinition.internalValue = undefined; + this._sloListDefinition.internalValue = undefined; + this._sunburstDefinition.internalValue = undefined; + this._timeseriesDefinition.internalValue = undefined; + this._toplistDefinition.internalValue = undefined; + this._topologyMapDefinition.internalValue = undefined; + this._traceServiceDefinition.internalValue = undefined; + this._treemapDefinition.internalValue = undefined; + this._widgetLayout.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -3481,638 +2887,527 @@ export class DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputRe else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._alertGraphDefinition.internalValue = value.alertGraphDefinition; + this._alertValueDefinition.internalValue = value.alertValueDefinition; + this._changeDefinition.internalValue = value.changeDefinition; + this._checkStatusDefinition.internalValue = value.checkStatusDefinition; + this._distributionDefinition.internalValue = value.distributionDefinition; + this._eventStreamDefinition.internalValue = value.eventStreamDefinition; + this._eventTimelineDefinition.internalValue = value.eventTimelineDefinition; + this._freeTextDefinition.internalValue = value.freeTextDefinition; + this._geomapDefinition.internalValue = value.geomapDefinition; + this._heatmapDefinition.internalValue = value.heatmapDefinition; + this._hostmapDefinition.internalValue = value.hostmapDefinition; + this._iframeDefinition.internalValue = value.iframeDefinition; + this._imageDefinition.internalValue = value.imageDefinition; + this._listStreamDefinition.internalValue = value.listStreamDefinition; + this._logStreamDefinition.internalValue = value.logStreamDefinition; + this._manageStatusDefinition.internalValue = value.manageStatusDefinition; + this._noteDefinition.internalValue = value.noteDefinition; + this._queryTableDefinition.internalValue = value.queryTableDefinition; + this._queryValueDefinition.internalValue = value.queryValueDefinition; + this._scatterplotDefinition.internalValue = value.scatterplotDefinition; + this._serviceLevelObjectiveDefinition.internalValue = value.serviceLevelObjectiveDefinition; + this._servicemapDefinition.internalValue = value.servicemapDefinition; + this._sloListDefinition.internalValue = value.sloListDefinition; + this._sunburstDefinition.internalValue = value.sunburstDefinition; + this._timeseriesDefinition.internalValue = value.timeseriesDefinition; + this._toplistDefinition.internalValue = value.toplistDefinition; + this._topologyMapDefinition.internalValue = value.topologyMapDefinition; + this._traceServiceDefinition.internalValue = value.traceServiceDefinition; + this._treemapDefinition.internalValue = value.treemapDefinition; + this._widgetLayout.internalValue = value.widgetLayout; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // id - computed: true, optional: false, required: false + public get id() { + return this.getNumberAttribute('id'); + } + + // alert_graph_definition - computed: false, optional: true, required: false + private _alertGraphDefinition = new DashboardWidgetGroupDefinitionWidgetAlertGraphDefinitionOutputReference(this, "alert_graph_definition"); + public get alertGraphDefinition() { + return this._alertGraphDefinition; + } + public putAlertGraphDefinition(value: DashboardWidgetGroupDefinitionWidgetAlertGraphDefinition) { + this._alertGraphDefinition.internalValue = value; + } + public resetAlertGraphDefinition() { + this._alertGraphDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get alertGraphDefinitionInput() { + return this._alertGraphDefinition.internalValue; + } + + // alert_value_definition - computed: false, optional: true, required: false + private _alertValueDefinition = new DashboardWidgetGroupDefinitionWidgetAlertValueDefinitionOutputReference(this, "alert_value_definition"); + public get alertValueDefinition() { + return this._alertValueDefinition; + } + public putAlertValueDefinition(value: DashboardWidgetGroupDefinitionWidgetAlertValueDefinition) { + this._alertValueDefinition.internalValue = value; + } + public resetAlertValueDefinition() { + this._alertValueDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get alertValueDefinitionInput() { + return this._alertValueDefinition.internalValue; + } + + // change_definition - computed: false, optional: true, required: false + private _changeDefinition = new DashboardWidgetGroupDefinitionWidgetChangeDefinitionOutputReference(this, "change_definition"); + public get changeDefinition() { + return this._changeDefinition; } - public set aggregation(value: string) { - this._aggregation = value; + public putChangeDefinition(value: DashboardWidgetGroupDefinitionWidgetChangeDefinition) { + this._changeDefinition.internalValue = value; + } + public resetChangeDefinition() { + this._changeDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get changeDefinitionInput() { + return this._changeDefinition.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // check_status_definition - computed: false, optional: true, required: false + private _checkStatusDefinition = new DashboardWidgetGroupDefinitionWidgetCheckStatusDefinitionOutputReference(this, "check_status_definition"); + public get checkStatusDefinition() { + return this._checkStatusDefinition; } - public set facet(value: string) { - this._facet = value; + public putCheckStatusDefinition(value: DashboardWidgetGroupDefinitionWidgetCheckStatusDefinition) { + this._checkStatusDefinition.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetCheckStatusDefinition() { + this._checkStatusDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get checkStatusDefinitionInput() { + return this._checkStatusDefinition.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // distribution_definition - computed: false, optional: true, required: false + private _distributionDefinition = new DashboardWidgetGroupDefinitionWidgetDistributionDefinitionOutputReference(this, "distribution_definition"); + public get distributionDefinition() { + return this._distributionDefinition; } - public set interval(value: number) { - this._interval = value; + public putDistributionDefinition(value: DashboardWidgetGroupDefinitionWidgetDistributionDefinition) { + this._distributionDefinition.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetDistributionDefinition() { + this._distributionDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get distributionDefinitionInput() { + return this._distributionDefinition.internalValue; } -} -export class DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // event_stream_definition - computed: false, optional: true, required: false + private _eventStreamDefinition = new DashboardWidgetGroupDefinitionWidgetEventStreamDefinitionOutputReference(this, "event_stream_definition"); + public get eventStreamDefinition() { + return this._eventStreamDefinition; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putEventStreamDefinition(value: DashboardWidgetGroupDefinitionWidgetEventStreamDefinition) { + this._eventStreamDefinition.internalValue = value; } -} -export interface DashboardWidgetHeatmapDefinitionRequestApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; - /** - * compute_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} - */ - readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery; - /** - * group_by block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; - /** - * multi_compute block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} - */ - readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; -} - -export function dashboardWidgetHeatmapDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestApmQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + public resetEventStreamDefinition() { + this._eventStreamDefinition.internalValue = undefined; } - return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + // Temporarily expose input value. Use with caution. + public get eventStreamDefinitionInput() { + return this._eventStreamDefinition.internalValue; } -} -export class DashboardWidgetHeatmapDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // event_timeline_definition - computed: false, optional: true, required: false + private _eventTimelineDefinition = new DashboardWidgetGroupDefinitionWidgetEventTimelineDefinitionOutputReference(this, "event_timeline_definition"); + public get eventTimelineDefinition() { + return this._eventTimelineDefinition; + } + public putEventTimelineDefinition(value: DashboardWidgetGroupDefinitionWidgetEventTimelineDefinition) { + this._eventTimelineDefinition.internalValue = value; + } + public resetEventTimelineDefinition() { + this._eventTimelineDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get eventTimelineDefinitionInput() { + return this._eventTimelineDefinition.internalValue; } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; - } - if (this._groupBy?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; - } - if (this._multiCompute?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + // free_text_definition - computed: false, optional: true, required: false + private _freeTextDefinition = new DashboardWidgetGroupDefinitionWidgetFreeTextDefinitionOutputReference(this, "free_text_definition"); + public get freeTextDefinition() { + return this._freeTextDefinition; + } + public putFreeTextDefinition(value: DashboardWidgetGroupDefinitionWidgetFreeTextDefinition) { + this._freeTextDefinition.internalValue = value; + } + public resetFreeTextDefinition() { + this._freeTextDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get freeTextDefinitionInput() { + return this._freeTextDefinition.internalValue; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; - } + // geomap_definition - computed: false, optional: true, required: false + private _geomapDefinition = new DashboardWidgetGroupDefinitionWidgetGeomapDefinitionOutputReference(this, "geomap_definition"); + public get geomapDefinition() { + return this._geomapDefinition; + } + public putGeomapDefinition(value: DashboardWidgetGroupDefinitionWidgetGeomapDefinition) { + this._geomapDefinition.internalValue = value; + } + public resetGeomapDefinition() { + this._geomapDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get geomapDefinitionInput() { + return this._geomapDefinition.internalValue; } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // heatmap_definition - computed: false, optional: true, required: false + private _heatmapDefinition = new DashboardWidgetGroupDefinitionWidgetHeatmapDefinitionOutputReference(this, "heatmap_definition"); + public get heatmapDefinition() { + return this._heatmapDefinition; } - public set index(value: string) { - this._index = value; + public putHeatmapDefinition(value: DashboardWidgetGroupDefinitionWidgetHeatmapDefinition) { + this._heatmapDefinition.internalValue = value; + } + public resetHeatmapDefinition() { + this._heatmapDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get heatmapDefinitionInput() { + return this._heatmapDefinition.internalValue; + } + + // hostmap_definition - computed: false, optional: true, required: false + private _hostmapDefinition = new DashboardWidgetGroupDefinitionWidgetHostmapDefinitionOutputReference(this, "hostmap_definition"); + public get hostmapDefinition() { + return this._hostmapDefinition; + } + public putHostmapDefinition(value: DashboardWidgetGroupDefinitionWidgetHostmapDefinition) { + this._hostmapDefinition.internalValue = value; + } + public resetHostmapDefinition() { + this._hostmapDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get hostmapDefinitionInput() { + return this._hostmapDefinition.internalValue; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // iframe_definition - computed: false, optional: true, required: false + private _iframeDefinition = new DashboardWidgetGroupDefinitionWidgetIframeDefinitionOutputReference(this, "iframe_definition"); + public get iframeDefinition() { + return this._iframeDefinition; } - public set searchQuery(value: string) { - this._searchQuery = value; + public putIframeDefinition(value: DashboardWidgetGroupDefinitionWidgetIframeDefinition) { + this._iframeDefinition.internalValue = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetIframeDefinition() { + this._iframeDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get iframeDefinitionInput() { + return this._iframeDefinition.internalValue; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // image_definition - computed: false, optional: true, required: false + private _imageDefinition = new DashboardWidgetGroupDefinitionWidgetImageDefinitionOutputReference(this, "image_definition"); + public get imageDefinition() { + return this._imageDefinition; } - public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putImageDefinition(value: DashboardWidgetGroupDefinitionWidgetImageDefinition) { + this._imageDefinition.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetImageDefinition() { + this._imageDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get imageDefinitionInput() { + return this._imageDefinition.internalValue; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // list_stream_definition - computed: false, optional: true, required: false + private _listStreamDefinition = new DashboardWidgetGroupDefinitionWidgetListStreamDefinitionOutputReference(this, "list_stream_definition"); + public get listStreamDefinition() { + return this._listStreamDefinition; } - public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putListStreamDefinition(value: DashboardWidgetGroupDefinitionWidgetListStreamDefinition) { + this._listStreamDefinition.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetListStreamDefinition() { + this._listStreamDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get listStreamDefinitionInput() { + return this._listStreamDefinition.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // log_stream_definition - computed: false, optional: true, required: false + private _logStreamDefinition = new DashboardWidgetGroupDefinitionWidgetLogStreamDefinitionOutputReference(this, "log_stream_definition"); + public get logStreamDefinition() { + return this._logStreamDefinition; } - public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putLogStreamDefinition(value: DashboardWidgetGroupDefinitionWidgetLogStreamDefinition) { + this._logStreamDefinition.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetLogStreamDefinition() { + this._logStreamDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get logStreamDefinitionInput() { + return this._logStreamDefinition.internalValue; } -} -export interface DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Define the time interval in seconds. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} - */ - readonly interval?: number; -} -export function dashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // manage_status_definition - computed: false, optional: true, required: false + private _manageStatusDefinition = new DashboardWidgetGroupDefinitionWidgetManageStatusDefinitionOutputReference(this, "manage_status_definition"); + public get manageStatusDefinition() { + return this._manageStatusDefinition; } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + public putManageStatusDefinition(value: DashboardWidgetGroupDefinitionWidgetManageStatusDefinition) { + this._manageStatusDefinition.internalValue = value; } -} - -export class DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public resetManageStatusDefinition() { + this._manageStatusDefinition.internalValue = undefined; } - - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get manageStatusDefinitionInput() { + return this._manageStatusDefinition.internalValue; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } + // note_definition - computed: false, optional: true, required: false + private _noteDefinition = new DashboardWidgetGroupDefinitionWidgetNoteDefinitionOutputReference(this, "note_definition"); + public get noteDefinition() { + return this._noteDefinition; } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + public putNoteDefinition(value: DashboardWidgetGroupDefinitionWidgetNoteDefinition) { + this._noteDefinition.internalValue = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetNoteDefinition() { + this._noteDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get noteDefinitionInput() { + return this._noteDefinition.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // query_table_definition - computed: false, optional: true, required: false + private _queryTableDefinition = new DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionOutputReference(this, "query_table_definition"); + public get queryTableDefinition() { + return this._queryTableDefinition; } - public set facet(value: string) { - this._facet = value; + public putQueryTableDefinition(value: DashboardWidgetGroupDefinitionWidgetQueryTableDefinition) { + this._queryTableDefinition.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetQueryTableDefinition() { + this._queryTableDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get queryTableDefinitionInput() { + return this._queryTableDefinition.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // query_value_definition - computed: false, optional: true, required: false + private _queryValueDefinition = new DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionOutputReference(this, "query_value_definition"); + public get queryValueDefinition() { + return this._queryValueDefinition; } - public set interval(value: number) { - this._interval = value; + public putQueryValueDefinition(value: DashboardWidgetGroupDefinitionWidgetQueryValueDefinition) { + this._queryValueDefinition.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetQueryValueDefinition() { + this._queryValueDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryValueDefinitionInput() { + return this._queryValueDefinition.internalValue; } -} -export interface DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} -export function dashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // scatterplot_definition - computed: false, optional: true, required: false + private _scatterplotDefinition = new DashboardWidgetGroupDefinitionWidgetScatterplotDefinitionOutputReference(this, "scatterplot_definition"); + public get scatterplotDefinition() { + return this._scatterplotDefinition; + } + public putScatterplotDefinition(value: DashboardWidgetGroupDefinitionWidgetScatterplotDefinition) { + this._scatterplotDefinition.internalValue = value; + } + public resetScatterplotDefinition() { + this._scatterplotDefinition.internalValue = undefined; } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + // Temporarily expose input value. Use with caution. + public get scatterplotDefinitionInput() { + return this._scatterplotDefinition.internalValue; } -} - -export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // service_level_objective_definition - computed: false, optional: true, required: false + private _serviceLevelObjectiveDefinition = new DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinitionOutputReference(this, "service_level_objective_definition"); + public get serviceLevelObjectiveDefinition() { + return this._serviceLevelObjectiveDefinition; } - - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + public putServiceLevelObjectiveDefinition(value: DashboardWidgetGroupDefinitionWidgetServiceLevelObjectiveDefinition) { + this._serviceLevelObjectiveDefinition.internalValue = value; } - - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + public resetServiceLevelObjectiveDefinition() { + this._serviceLevelObjectiveDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get serviceLevelObjectiveDefinitionInput() { + return this._serviceLevelObjectiveDefinition.internalValue; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // servicemap_definition - computed: false, optional: true, required: false + private _servicemapDefinition = new DashboardWidgetGroupDefinitionWidgetServicemapDefinitionOutputReference(this, "servicemap_definition"); + public get servicemapDefinition() { + return this._servicemapDefinition; } - public set aggregation(value: string) { - this._aggregation = value; + public putServicemapDefinition(value: DashboardWidgetGroupDefinitionWidgetServicemapDefinition) { + this._servicemapDefinition.internalValue = value; + } + public resetServicemapDefinition() { + this._servicemapDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get servicemapDefinitionInput() { + return this._servicemapDefinition.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // slo_list_definition - computed: false, optional: true, required: false + private _sloListDefinition = new DashboardWidgetGroupDefinitionWidgetSloListDefinitionOutputReference(this, "slo_list_definition"); + public get sloListDefinition() { + return this._sloListDefinition; } - public set facet(value: string) { - this._facet = value; + public putSloListDefinition(value: DashboardWidgetGroupDefinitionWidgetSloListDefinition) { + this._sloListDefinition.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetSloListDefinition() { + this._sloListDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get sloListDefinitionInput() { + return this._sloListDefinition.internalValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // sunburst_definition - computed: false, optional: true, required: false + private _sunburstDefinition = new DashboardWidgetGroupDefinitionWidgetSunburstDefinitionOutputReference(this, "sunburst_definition"); + public get sunburstDefinition() { + return this._sunburstDefinition; } - public set order(value: string) { - this._order = value; + public putSunburstDefinition(value: DashboardWidgetGroupDefinitionWidgetSunburstDefinition) { + this._sunburstDefinition.internalValue = value; + } + public resetSunburstDefinition() { + this._sunburstDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get sunburstDefinitionInput() { + return this._sunburstDefinition.internalValue; } -} -export interface DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery; -} -export function dashboardWidgetHeatmapDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // timeseries_definition - computed: false, optional: true, required: false + private _timeseriesDefinition = new DashboardWidgetGroupDefinitionWidgetTimeseriesDefinitionOutputReference(this, "timeseries_definition"); + public get timeseriesDefinition() { + return this._timeseriesDefinition; } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + public putTimeseriesDefinition(value: DashboardWidgetGroupDefinitionWidgetTimeseriesDefinition) { + this._timeseriesDefinition.internalValue = value; } -} - -export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public resetTimeseriesDefinition() { + this._timeseriesDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeseriesDefinitionInput() { + return this._timeseriesDefinition.internalValue; } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + // toplist_definition - computed: false, optional: true, required: false + private _toplistDefinition = new DashboardWidgetGroupDefinitionWidgetToplistDefinitionOutputReference(this, "toplist_definition"); + public get toplistDefinition() { + return this._toplistDefinition; + } + public putToplistDefinition(value: DashboardWidgetGroupDefinitionWidgetToplistDefinition) { + this._toplistDefinition.internalValue = value; + } + public resetToplistDefinition() { + this._toplistDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get toplistDefinitionInput() { + return this._toplistDefinition.internalValue; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // topology_map_definition - computed: false, optional: true, required: false + private _topologyMapDefinition = new DashboardWidgetGroupDefinitionWidgetTopologyMapDefinitionOutputReference(this, "topology_map_definition"); + public get topologyMapDefinition() { + return this._topologyMapDefinition; + } + public putTopologyMapDefinition(value: DashboardWidgetGroupDefinitionWidgetTopologyMapDefinition) { + this._topologyMapDefinition.internalValue = value; + } + public resetTopologyMapDefinition() { + this._topologyMapDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get topologyMapDefinitionInput() { + return this._topologyMapDefinition.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // trace_service_definition - computed: false, optional: true, required: false + private _traceServiceDefinition = new DashboardWidgetGroupDefinitionWidgetTraceServiceDefinitionOutputReference(this, "trace_service_definition"); + public get traceServiceDefinition() { + return this._traceServiceDefinition; } - public set facet(value: string) { - this._facet = value; + public putTraceServiceDefinition(value: DashboardWidgetGroupDefinitionWidgetTraceServiceDefinition) { + this._traceServiceDefinition.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetTraceServiceDefinition() { + this._traceServiceDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get traceServiceDefinitionInput() { + return this._traceServiceDefinition.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // treemap_definition - computed: false, optional: true, required: false + private _treemapDefinition = new DashboardWidgetGroupDefinitionWidgetTreemapDefinitionOutputReference(this, "treemap_definition"); + public get treemapDefinition() { + return this._treemapDefinition; } - public set limit(value: number) { - this._limit = value; + public putTreemapDefinition(value: DashboardWidgetGroupDefinitionWidgetTreemapDefinition) { + this._treemapDefinition.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetTreemapDefinition() { + this._treemapDefinition.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get treemapDefinitionInput() { + return this._treemapDefinition.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // widget_layout - computed: false, optional: true, required: false + private _widgetLayout = new DashboardWidgetGroupDefinitionWidgetWidgetLayoutOutputReference(this, "widget_layout"); + public get widgetLayout() { + return this._widgetLayout; } - public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putWidgetLayout(value: DashboardWidgetGroupDefinitionWidgetWidgetLayout) { + this._widgetLayout.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetWidgetLayout() { + this._widgetLayout.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get widgetLayoutInput() { + return this._widgetLayout.internalValue; } } -export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetGroupDefinitionWidgetList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetGroupDefinitionWidget[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4126,496 +3421,531 @@ export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByList extends /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetGroupDefinitionWidgetOutputReference { + return new DashboardWidgetGroupDefinitionWidgetOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute { +export interface DashboardWidgetGroupDefinition { /** - * The aggregation method. + * The background color of the group title, options: `vivid_blue`, `vivid_purple`, `vivid_pink`, `vivid_orange`, `vivid_yellow`, `vivid_green`, `blue`, `purple`, `pink`, `orange`, `yellow`, `green`, `gray` or `white` * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#background_color Dashboard#background_color} */ - readonly aggregation: string; + readonly backgroundColor?: string; /** - * The facet name. + * The image URL to display as a banner for the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#banner_img Dashboard#banner_img} */ - readonly facet?: string; + readonly bannerImg?: string; /** - * Define the time interval in seconds. + * The layout type of the group. Valid values are `ordered`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#layout_type Dashboard#layout_type} */ - readonly interval?: number; + readonly layoutType: string; + /** + * Whether to show the title or not. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_title Dashboard#show_title} + */ + readonly showTitle?: boolean | cdktf.IResolvable; + /** + * The title of the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + */ + readonly title?: string; + /** + * widget block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#widget Dashboard#widget} + */ + readonly widget?: DashboardWidgetGroupDefinitionWidget[] | cdktf.IResolvable; } -export function dashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetGroupDefinitionToTerraform(struct?: DashboardWidgetGroupDefinitionOutputReference | DashboardWidgetGroupDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + background_color: cdktf.stringToTerraform(struct!.backgroundColor), + banner_img: cdktf.stringToTerraform(struct!.bannerImg), + layout_type: cdktf.stringToTerraform(struct!.layoutType), + show_title: cdktf.booleanToTerraform(struct!.showTitle), + title: cdktf.stringToTerraform(struct!.title), + widget: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetToTerraform, true)(struct!.widget), } } -export class DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetGroupDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetGroupDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._backgroundColor !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.backgroundColor = this._backgroundColor; } - if (this._facet !== undefined) { + if (this._bannerImg !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.bannerImg = this._bannerImg; } - if (this._interval !== undefined) { + if (this._layoutType !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.layoutType = this._layoutType; + } + if (this._showTitle !== undefined) { + hasAnyValues = true; + internalValueResult.showTitle = this._showTitle; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._widget?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.widget = this._widget?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetGroupDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._backgroundColor = undefined; + this._bannerImg = undefined; + this._layoutType = undefined; + this._showTitle = undefined; + this._title = undefined; + this._widget.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._backgroundColor = value.backgroundColor; + this._bannerImg = value.bannerImg; + this._layoutType = value.layoutType; + this._showTitle = value.showTitle; + this._title = value.title; + this._widget.internalValue = value.widget; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // background_color - computed: false, optional: true, required: false + private _backgroundColor?: string; + public get backgroundColor() { + return this.getStringAttribute('background_color'); } - public set aggregation(value: string) { - this._aggregation = value; + public set backgroundColor(value: string) { + this._backgroundColor = value; + } + public resetBackgroundColor() { + this._backgroundColor = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get backgroundColorInput() { + return this._backgroundColor; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // banner_img - computed: false, optional: true, required: false + private _bannerImg?: string; + public get bannerImg() { + return this.getStringAttribute('banner_img'); } - public set facet(value: string) { - this._facet = value; + public set bannerImg(value: string) { + this._bannerImg = value; } - public resetFacet() { - this._facet = undefined; + public resetBannerImg() { + this._bannerImg = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get bannerImgInput() { + return this._bannerImg; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // layout_type - computed: false, optional: false, required: true + private _layoutType?: string; + public get layoutType() { + return this.getStringAttribute('layout_type'); } - public set interval(value: number) { - this._interval = value; + public set layoutType(value: string) { + this._layoutType = value; } - public resetInterval() { - this._interval = undefined; + // Temporarily expose input value. Use with caution. + public get layoutTypeInput() { + return this._layoutType; + } + + // show_title - computed: false, optional: true, required: false + private _showTitle?: boolean | cdktf.IResolvable; + public get showTitle() { + return this.getBooleanAttribute('show_title'); + } + public set showTitle(value: boolean | cdktf.IResolvable) { + this._showTitle = value; + } + public resetShowTitle() { + this._showTitle = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get showTitleInput() { + return this._showTitle; } -} -export class DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); + } + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // widget - computed: false, optional: true, required: false + private _widget = new DashboardWidgetGroupDefinitionWidgetList(this, "widget", false); + public get widget() { + return this._widget; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putWidget(value: DashboardWidgetGroupDefinitionWidget[] | cdktf.IResolvable) { + this._widget.internalValue = value; + } + public resetWidget() { + this._widget.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get widgetInput() { + return this._widget.internalValue; } } -export interface DashboardWidgetHeatmapDefinitionRequestLogQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; +export interface DashboardWidgetHeatmapDefinitionCustomLink { /** - * The search query to use. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly searchQuery?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * compute_query block + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery; + readonly label?: string; /** - * group_by block + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly link?: string; /** - * multi_compute block + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly overrideLabel?: string; } -export function dashboardWidgetHeatmapDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestLogQuery): any { +export function dashboardWidgetHeatmapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetHeatmapDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetHeatmapDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.isHidden = this._isHidden; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.label = this._label; } - if (this._groupBy?.internalValue !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.link = this._link; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._overrideLabel !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get isHiddenInput() { + return this._isHidden; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set label(value: string) { + this._label = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get labelInput() { + return this._label; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set link(value: string) { + this._link = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get linkInput() { + return this._link; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get overrideLabelInput() { + return this._overrideLabel; } } -export interface DashboardWidgetHeatmapDefinitionRequestProcessQuery { + +export class DashboardWidgetHeatmapDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionCustomLink[] | cdktf.IResolvable + /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly filterBy?: string[]; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The max number of items in the filter list. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * @param index the index of the item to return */ - readonly limit?: number; + public get(index: number): DashboardWidgetHeatmapDefinitionCustomLinkOutputReference { + return new DashboardWidgetHeatmapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHeatmapDefinitionEvent { /** - * Your chosen metric. + * The event query to use in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly metric: string; + readonly q: string; /** - * Your chosen search term. + * The execution method for multi-value filters. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tags_execution Dashboard#tags_execution} */ - readonly searchBy?: string; + readonly tagsExecution?: string; } -export function dashboardWidgetHeatmapDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestProcessQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestProcessQuery): any { +export function dashboardWidgetHeatmapDefinitionEventToTerraform(struct?: DashboardWidgetHeatmapDefinitionEvent | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + q: cdktf.stringToTerraform(struct!.q), + tags_execution: cdktf.stringToTerraform(struct!.tagsExecution), } } -export class DashboardWidgetHeatmapDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionEventOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionEvent | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.q = this._q; } - if (this._searchBy !== undefined) { + if (this._tagsExecution !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.tagsExecution = this._tagsExecution; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionEvent | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this.resolvableValue = undefined; + this._q = undefined; + this._tagsExecution = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this.resolvableValue = undefined; + this._q = value.q; + this._tagsExecution = value.tagsExecution; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; + // q - computed: false, optional: false, required: true + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public resetFilterBy() { - this._filterBy = undefined; + public set q(value: string) { + this._q = value; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get qInput() { + return this._q; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // tags_execution - computed: false, optional: true, required: false + private _tagsExecution?: string; + public get tagsExecution() { + return this.getStringAttribute('tags_execution'); } - public set limit(value: number) { - this._limit = value; + public set tagsExecution(value: string) { + this._tagsExecution = value; } - public resetLimit() { - this._limit = undefined; + public resetTagsExecution() { + this._tagsExecution = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get tagsExecutionInput() { + return this._tagsExecution; } +} - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } +export class DashboardWidgetHeatmapDefinitionEventList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionEvent[] | cdktf.IResolvable - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHeatmapDefinitionEventOutputReference { + return new DashboardWidgetHeatmapDefinitionEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery { +export interface DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery { /** * The aggregation method. * @@ -4636,7 +3966,7 @@ export interface DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery { readonly interval?: number; } -export function dashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4648,7 +3978,7 @@ export function dashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryToTer } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4659,7 +3989,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputRe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -4677,7 +4007,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -4737,7 +4067,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputRe return this._interval; } } -export interface DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery { +export interface DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery { /** * The aggregation method. * @@ -4758,7 +4088,7 @@ export interface DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery readonly order: string; } -export function dashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4770,7 +4100,7 @@ export function dashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryT } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4781,7 +4111,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -4799,7 +4129,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -4856,7 +4186,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutp return this._order; } } -export interface DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy { +export interface DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy { /** * The facet name. * @@ -4874,10 +4204,10 @@ export interface DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetHeatmapDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4885,11 +4215,11 @@ export function dashboardWidgetHeatmapDefinitionRequestRumQueryGroupByToTerrafor return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -4903,7 +4233,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReferen super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -4924,7 +4254,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReferen return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -4978,11 +4308,11 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReferen } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -4994,8 +4324,8 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReferen } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5009,11 +4339,11 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByList extends /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute { +export interface DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute { /** * The aggregation method. * @@ -5034,7 +4364,7 @@ export interface DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute { readonly interval?: number; } -export function dashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5046,7 +4376,7 @@ export function dashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeToTer } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5060,7 +4390,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -5081,7 +4411,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -5148,8 +4478,8 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputRe } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5163,11 +4493,11 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestRumQuery { +export interface DashboardWidgetHeatmapDefinitionRequestApmQuery { /** * The name of the index to query. * @@ -5185,22 +4515,22 @@ export interface DashboardWidgetHeatmapDefinitionRequestRumQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery; + readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHeatmapDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestRumQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestApmQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5208,13 +4538,13 @@ export function dashboardWidgetHeatmapDefinitionRequestRumQueryToTerraform(struc return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5225,7 +4555,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference exte super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -5251,7 +4581,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference exte return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -5300,11 +4630,11 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference exte } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestApmQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -5316,11 +4646,11 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference exte } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetHeatmapDefinitionRequestApmQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -5332,11 +4662,11 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference exte } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -5347,7 +4677,7 @@ export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference exte return this._multiCompute.internalValue; } } -export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery { +export interface DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery { /** * The aggregation method. * @@ -5368,7 +4698,7 @@ export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuer readonly interval?: number; } -export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5380,7 +4710,7 @@ export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5391,7 +4721,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -5409,7 +4739,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -5469,7 +4799,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOut return this._interval; } } -export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery { +export interface DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery { /** * The aggregation method. * @@ -5490,7 +4820,7 @@ export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySort readonly order: string; } -export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5502,7 +4832,7 @@ export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQ } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5513,7 +4843,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -5531,7 +4861,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -5588,7 +4918,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuer return this._order; } } -export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy { +export interface DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy { /** * The facet name. * @@ -5606,10 +4936,10 @@ export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery; } -export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5617,11 +4947,11 @@ export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByToTer return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5635,7 +4965,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -5656,7 +4986,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -5710,11 +5040,11 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputRe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -5726,8 +5056,8 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputRe } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5741,11 +5071,11 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute { +export interface DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute { /** * The aggregation method. * @@ -5766,7 +5096,7 @@ export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComput readonly interval?: number; } -export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5778,7 +5108,7 @@ export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5792,7 +5122,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -5813,7 +5143,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -5880,8 +5210,8 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOut } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5895,11 +5225,11 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHeatmapDefinitionRequestSecurityQuery { +export interface DashboardWidgetHeatmapDefinitionRequestLogQuery { /** * The name of the index to query. * @@ -5917,22 +5247,22 @@ export interface DashboardWidgetHeatmapDefinitionRequestSecurityQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery; + readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestSecurityQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestLogQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5940,13 +5270,13 @@ export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryToTerraform( return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5957,7 +5287,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -5983,7 +5313,7 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -6032,11 +5362,11 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestLogQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -6048,11 +5378,11 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetHeatmapDefinitionRequestLogQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -6064,11 +5394,11 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -6079,26 +5409,47 @@ export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference return this._multiCompute.internalValue; } } -export interface DashboardWidgetHeatmapDefinitionRequestStyle { +export interface DashboardWidgetHeatmapDefinitionRequestProcessQuery { /** - * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly palette?: string; + readonly filterBy?: string[]; + /** + * The max number of items in the filter list. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * Your chosen metric. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; } -export function dashboardWidgetHeatmapDefinitionRequestStyleToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestStyleOutputReference | DashboardWidgetHeatmapDefinitionRequestStyle): any { +export function dashboardWidgetHeatmapDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestProcessQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - palette: cdktf.stringToTerraform(struct!.palette), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetHeatmapDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6109,1014 +5460,839 @@ export class DashboardWidgetHeatmapDefinitionRequestStyleOutputReference extends super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequestStyle | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._palette !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.filterBy = this._filterBy; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestStyle | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._palette = undefined; + this._filterBy = undefined; + this._limit = undefined; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._palette = value.palette; + this._filterBy = value.filterBy; + this._limit = value.limit; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // palette - computed: false, optional: true, required: false - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set palette(value: string) { - this._palette = value; + public set filterBy(value: string[]) { + this._filterBy = value; } - public resetPalette() { - this._palette = undefined; + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get filterByInput() { + return this._filterBy; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetHeatmapDefinitionRequest { - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetHeatmapDefinitionRequestApmQuery; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetHeatmapDefinitionRequestLogQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetHeatmapDefinitionRequestProcessQuery; +export interface DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery { /** - * rum_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly rumQuery?: DashboardWidgetHeatmapDefinitionRequestRumQuery; + readonly aggregation: string; /** - * security_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly securityQuery?: DashboardWidgetHeatmapDefinitionRequestSecurityQuery; + readonly facet?: string; /** - * style block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly style?: DashboardWidgetHeatmapDefinitionRequestStyle; + readonly interval?: number; } -export function dashboardWidgetHeatmapDefinitionRequestToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetHeatmapDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - log_query: dashboardWidgetHeatmapDefinitionRequestLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetHeatmapDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - rum_query: dashboardWidgetHeatmapDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetHeatmapDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), - style: dashboardWidgetHeatmapDefinitionRequestStyleToTerraform(struct!.style), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHeatmapDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHeatmapDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._rumQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._style?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.style = this._style?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - this._style.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; - this._style.internalValue = value.style; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetQ() { - this._q = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; + public get aggregationInput() { + return this._aggregation; } - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetHeatmapDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putApmQuery(value: DashboardWidgetHeatmapDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; + public get facetInput() { + return this._facet; } - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetHeatmapDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putLogQuery(value: DashboardWidgetHeatmapDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetLogQuery() { - this._logQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; + public get intervalInput() { + return this._interval; } +} +export interface DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetHeatmapDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetHeatmapDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; - } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; +export function dashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } +} - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; - } - public putRumQuery(value: DashboardWidgetHeatmapDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; - } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; +export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } } - public putSecurityQuery(value: DashboardWidgetHeatmapDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // style - computed: false, optional: true, required: false - private _style = new DashboardWidgetHeatmapDefinitionRequestStyleOutputReference(this, "style"); - public get style() { - return this._style; - } - public putStyle(value: DashboardWidgetHeatmapDefinitionRequestStyle) { - this._style.internalValue = value; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetStyle() { - this._style.internalValue = undefined; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get styleInput() { - return this._style.internalValue; + public get facetInput() { + return this._facet; } -} -export class DashboardWidgetHeatmapDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHeatmapDefinitionRequest[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHeatmapDefinitionRequestOutputReference { - return new DashboardWidgetHeatmapDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHeatmapDefinitionYaxis { - /** - * Always include zero or fit the axis to the data range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} - */ - readonly includeZero?: boolean | cdktf.IResolvable; - /** - * The label of the axis to display on the graph. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; +export interface DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy { /** - * Specify the maximum value to show on the Y-axis. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly max?: string; + readonly facet?: string; /** - * Specify the minimum value to show on the Y-axis. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly min?: string; + readonly limit?: number; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly scale?: string; + readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery; } -export function dashboardWidgetHeatmapDefinitionYaxisToTerraform(struct?: DashboardWidgetHeatmapDefinitionYaxisOutputReference | DashboardWidgetHeatmapDefinitionYaxis): any { +export function dashboardWidgetHeatmapDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHeatmapDefinitionYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinitionYaxis | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { - hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._max !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.facet = this._facet; } - if (this._min !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.limit = this._limit; } - if (this._scale !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinitionYaxis | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); - } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; - } - public resetIncludeZero() { - this._includeZero = undefined; - } - // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; - } - - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); - } - public set label(value: string) { - this._label = value; - } - public resetLabel() { - this._label = undefined; - } - // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; - } - - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); - } - public set max(value: string) { - this._max = value; - } - public resetMax() { - this._max = undefined; - } - // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; - } - - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set min(value: string) { - this._min = value; + public set facet(value: string) { + this._facet = value; } - public resetMin() { - this._min = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; + public get facetInput() { + return this._facet; } - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); - } - public set scale(value: string) { - this._scale = value; - } - public resetScale() { - this._scale = undefined; - } - // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; - } -} -export interface DashboardWidgetHeatmapDefinition { - /** - * The size of the legend displayed in the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_size Dashboard#legend_size} - */ - readonly legendSize?: string; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * Whether or not to show the legend on this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_legend Dashboard#show_legend} - */ - readonly showLegend?: boolean | cdktf.IResolvable; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; + } +} + +export class DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable + /** - * The size of the widget's title (defaults to 16). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly titleSize?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * custom_link block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * @param index the index of the item to return */ - readonly customLink?: DashboardWidgetHeatmapDefinitionCustomLink[] | cdktf.IResolvable; + public get(index: number): DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute { /** - * event block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event Dashboard#event} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly event?: DashboardWidgetHeatmapDefinitionEvent[] | cdktf.IResolvable; + readonly aggregation: string; /** - * request block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly request?: DashboardWidgetHeatmapDefinitionRequest[] | cdktf.IResolvable; + readonly facet?: string; /** - * yaxis block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly yaxis?: DashboardWidgetHeatmapDefinitionYaxis; + readonly interval?: number; } -export function dashboardWidgetHeatmapDefinitionToTerraform(struct?: DashboardWidgetHeatmapDefinitionOutputReference | DashboardWidgetHeatmapDefinition): any { +export function dashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - legend_size: cdktf.stringToTerraform(struct!.legendSize), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - show_legend: cdktf.booleanToTerraform(struct!.showLegend), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetHeatmapDefinitionCustomLinkToTerraform, true)(struct!.customLink), - event: cdktf.listMapper(dashboardWidgetHeatmapDefinitionEventToTerraform, true)(struct!.event), - request: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestToTerraform, true)(struct!.request), - yaxis: dashboardWidgetHeatmapDefinitionYaxisToTerraform(struct!.yaxis), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHeatmapDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHeatmapDefinition | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._legendSize !== undefined) { - hasAnyValues = true; - internalValueResult.legendSize = this._legendSize; - } - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._showLegend !== undefined) { - hasAnyValues = true; - internalValueResult.showLegend = this._showLegend; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; - } - if (this._event?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.event = this._event?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._request?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.facet = this._facet; } - if (this._yaxis?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.yaxis = this._yaxis?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHeatmapDefinition | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._legendSize = undefined; - this._liveSpan = undefined; - this._showLegend = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._event.internalValue = undefined; - this._request.internalValue = undefined; - this._yaxis.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._legendSize = value.legendSize; - this._liveSpan = value.liveSpan; - this._showLegend = value.showLegend; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._event.internalValue = value.event; - this._request.internalValue = value.request; - this._yaxis.internalValue = value.yaxis; - } - } - - // legend_size - computed: false, optional: true, required: false - private _legendSize?: string; - public get legendSize() { - return this.getStringAttribute('legend_size'); - } - public set legendSize(value: string) { - this._legendSize = value; - } - public resetLegendSize() { - this._legendSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get legendSizeInput() { - return this._legendSize; - } - - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; - } - public resetLiveSpan() { - this._liveSpan = undefined; - } - // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; - } - - // show_legend - computed: false, optional: true, required: false - private _showLegend?: boolean | cdktf.IResolvable; - public get showLegend() { - return this.getBooleanAttribute('show_legend'); - } - public set showLegend(value: boolean | cdktf.IResolvable) { - this._showLegend = value; - } - public resetShowLegend() { - this._showLegend = undefined; - } - // Temporarily expose input value. Use with caution. - public get showLegendInput() { - return this._showLegend; - } - - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; - } - - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); - } - public set titleAlign(value: string) { - this._titleAlign = value; - } - public resetTitleAlign() { - this._titleAlign = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetTitleSize() { - this._titleSize = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get aggregationInput() { + return this._aggregation; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetHeatmapDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putCustomLink(value: DashboardWidgetHeatmapDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get facetInput() { + return this._facet; } - // event - computed: false, optional: true, required: false - private _event = new DashboardWidgetHeatmapDefinitionEventList(this, "event", false); - public get event() { - return this._event; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putEvent(value: DashboardWidgetHeatmapDefinitionEvent[] | cdktf.IResolvable) { - this._event.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetEvent() { - this._event.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get eventInput() { - return this._event.internalValue; + public get intervalInput() { + return this._interval; } +} - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetHeatmapDefinitionRequestList(this, "request", false); - public get request() { - return this._request; - } - public putRequest(value: DashboardWidgetHeatmapDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; - } - public resetRequest() { - this._request.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; - } +export class DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - // yaxis - computed: false, optional: true, required: false - private _yaxis = new DashboardWidgetHeatmapDefinitionYaxisOutputReference(this, "yaxis"); - public get yaxis() { - return this._yaxis; - } - public putYaxis(value: DashboardWidgetHeatmapDefinitionYaxis) { - this._yaxis.internalValue = value; - } - public resetYaxis() { - this._yaxis.internalValue = undefined; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get yaxisInput() { - return this._yaxis.internalValue; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionCustomLink { +export interface DashboardWidgetHeatmapDefinitionRequestRumQuery { /** - * The flag for toggling context menu link visibility. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly index: string; /** - * The label for the custom link URL. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly label?: string; + readonly searchQuery?: string; /** - * The URL of the custom link. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly link?: string; + readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly overrideLabel?: string; + readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHostmapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetHostmapDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHostmapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.index = this._index; } - if (this._label !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.searchQuery = this._searchQuery; } - if (this._link !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._overrideLabel !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + public set index(value: string) { + this._index = value; } - public resetIsHidden() { - this._isHidden = undefined; + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get searchQueryInput() { + return this._searchQuery; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set label(value: string) { - this._label = value; + public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestRumQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetLabel() { - this._label = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHeatmapDefinitionRequestRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set link(value: string) { - this._link = value; + public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetLink() { - this._link = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get groupByInput() { + return this._groupBy.internalValue; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; - } -} - -export class DashboardWidgetHostmapDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionCustomLink[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionCustomLinkOutputReference { - return new DashboardWidgetHostmapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery { +export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery { /** * The aggregation method. * @@ -7137,7 +6313,7 @@ export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -7149,7 +6325,7 @@ export function dashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryT } } -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7160,7 +6336,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -7178,7 +6354,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -7238,7 +6414,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutp return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery { +export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery { /** * The aggregation method. * @@ -7259,7 +6435,7 @@ export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQ readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -7271,7 +6447,7 @@ export function dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQu } } -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7282,7 +6458,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -7300,7 +6476,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -7357,7 +6533,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy { +export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy { /** * The facet name. * @@ -7375,10 +6551,10 @@ export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -7386,11 +6562,11 @@ export function dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByToTerr return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -7404,7 +6580,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputRef super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -7425,7 +6601,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputRef return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -7479,24 +6655,178 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputRef } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; + } +} + +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} + +export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -7510,378 +6840,578 @@ export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByList exte /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute { +export interface DashboardWidgetHeatmapDefinitionRequestSecurityQuery { /** - * The aggregation method. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * The facet name. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly facet?: string; + readonly searchQuery?: string; /** - * Define the time interval in seconds. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly interval?: number; + readonly computeQuery?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHeatmapDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference | DashboardWidgetHeatmapDefinitionRequestSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._facet !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.searchQuery = this._searchQuery; } - if (this._interval !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set interval(value: number) { - this._interval = value; + public putComputeQuery(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetHeatmapDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; + } +} +export interface DashboardWidgetHeatmapDefinitionRequestStyle { + /** + * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette?: string; +} + +export function dashboardWidgetHeatmapDefinitionRequestStyleToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequestStyleOutputReference | DashboardWidgetHeatmapDefinitionRequestStyle): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + palette: cdktf.stringToTerraform(struct!.palette), + } +} + +export class DashboardWidgetHeatmapDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetHeatmapDefinitionRequestStyle | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequestStyle | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._palette = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._palette = value.palette; + } + } + + // palette - computed: false, optional: true, required: false + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public resetInterval() { - this._interval = undefined; + public set palette(value: string) { + this._palette = value; + } + public resetPalette() { + this._palette = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get paletteInput() { + return this._palette; } } - -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetHeatmapDefinitionRequest { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The metric query to use for this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly q?: string; /** - * @param index the index of the item to return + * apm_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHostmapDefinitionRequestFillApmQuery { + readonly apmQuery?: DashboardWidgetHeatmapDefinitionRequestApmQuery; /** - * The name of the index to query. + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly index: string; + readonly logQuery?: DashboardWidgetHeatmapDefinitionRequestLogQuery; /** - * The search query to use. + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly searchQuery?: string; + readonly processQuery?: DashboardWidgetHeatmapDefinitionRequestProcessQuery; /** - * compute_query block + * rum_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery; + readonly rumQuery?: DashboardWidgetHeatmapDefinitionRequestRumQuery; /** - * group_by block + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy[] | cdktf.IResolvable; + readonly securityQuery?: DashboardWidgetHeatmapDefinitionRequestSecurityQuery; /** - * multi_compute block + * style block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute[] | cdktf.IResolvable; + readonly style?: DashboardWidgetHeatmapDefinitionRequestStyle; } -export function dashboardWidgetHostmapDefinitionRequestFillApmQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillApmQuery): any { +export function dashboardWidgetHeatmapDefinitionRequestToTerraform(struct?: DashboardWidgetHeatmapDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetHeatmapDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + log_query: dashboardWidgetHeatmapDefinitionRequestLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetHeatmapDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + rum_query: dashboardWidgetHeatmapDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetHeatmapDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), + style: dashboardWidgetHeatmapDefinitionRequestStyleToTerraform(struct!.style), } } -export class DashboardWidgetHostmapDefinitionRequestFillApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.q = this._q; } - if (this._searchQuery !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._logQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.logQuery = this._logQuery?.internalValue; } - if (this._groupBy?.internalValue !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.processQuery = this._processQuery?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._rumQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; + } + if (this._style?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.style = this._style?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + this._style.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; + this._style.internalValue = value.style; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set index(value: string) { - this._index = value; + public set q(value: string) { + this._q = value; + } + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get qInput() { + return this._q; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetHeatmapDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set searchQuery(value: string) { - this._searchQuery = value; + public putApmQuery(value: DashboardWidgetHeatmapDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetHeatmapDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putLogQuery(value: DashboardWidgetHeatmapDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLogQuery() { + this._logQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get logQueryInput() { + return this._logQuery.internalValue; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetHeatmapDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putProcessQuery(value: DashboardWidgetHeatmapDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; + } + + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetHeatmapDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; + } + public putRumQuery(value: DashboardWidgetHeatmapDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; + } + public resetRumQuery() { + this._rumQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get rumQueryInput() { + return this._rumQuery.internalValue; + } + + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetHeatmapDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; + } + public putSecurityQuery(value: DashboardWidgetHeatmapDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get securityQueryInput() { + return this._securityQuery.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // style - computed: false, optional: true, required: false + private _style = new DashboardWidgetHeatmapDefinitionRequestStyleOutputReference(this, "style"); + public get style() { + return this._style; } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putStyle(value: DashboardWidgetHeatmapDefinitionRequestStyle) { + this._style.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetStyle() { + this._style.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get styleInput() { + return this._style.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery { + +export class DashboardWidgetHeatmapDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHeatmapDefinitionRequest[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHeatmapDefinitionRequestOutputReference { + return new DashboardWidgetHeatmapDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHeatmapDefinitionYaxis { + /** + * Always include zero or fit the axis to the data range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - readonly aggregation: string; + readonly includeZero?: boolean | cdktf.IResolvable; /** - * The facet name. + * The label of the axis to display on the graph. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly facet?: string; + readonly label?: string; /** - * Define the time interval in seconds. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly interval?: number; + readonly max?: string; + /** + * Specify the minimum value to show on the Y-axis. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + */ + readonly min?: string; + /** + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + */ + readonly scale?: string; } -export function dashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery): any { +export function dashboardWidgetHeatmapDefinitionYaxisToTerraform(struct?: DashboardWidgetHeatmapDefinitionYaxisOutputReference | DashboardWidgetHeatmapDefinitionYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), + label: cdktf.stringToTerraform(struct!.label), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7892,118 +7422,214 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinitionYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.includeZero = this._includeZero; } - if (this._facet !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.label = this._label; } - if (this._interval !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.max = this._max; + } + if (this._min !== undefined) { + hasAnyValues = true; + internalValueResult.min = this._min; + } + if (this._scale !== undefined) { + hasAnyValues = true; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinitionYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._includeZero = undefined; + this._label = undefined; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._includeZero = value.includeZero; + this._label = value.label; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - public set aggregation(value: string) { - this._aggregation = value; + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; + } + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get includeZeroInput() { + return this._includeZero; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set facet(value: string) { - this._facet = value; + public set label(value: string) { + this._label = value; } - public resetFacet() { - this._facet = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get labelInput() { + return this._label; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set interval(value: number) { - this._interval = value; + public set max(value: string) { + this._max = value; } - public resetInterval() { - this._interval = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get maxInput() { + return this._max; + } + + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); + } + public set min(value: string) { + this._min = value; + } + public resetMin() { + this._min = undefined; + } + // Temporarily expose input value. Use with caution. + public get minInput() { + return this._min; + } + + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); + } + public set scale(value: string) { + this._scale = value; + } + public resetScale() { + this._scale = undefined; + } + // Temporarily expose input value. Use with caution. + public get scaleInput() { + return this._scale; } } -export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery { +export interface DashboardWidgetHeatmapDefinition { + /** + * The size of the legend displayed in the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_size Dashboard#legend_size} + */ + readonly legendSize?: string; + /** + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} + */ + readonly liveSpan?: string; + /** + * Whether or not to show the legend on this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_legend Dashboard#show_legend} + */ + readonly showLegend?: boolean | cdktf.IResolvable; + /** + * The title of the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + */ + readonly title?: string; + /** + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; /** - * The aggregation method. + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly aggregation: string; + readonly titleSize?: string; /** - * The facet name. + * custom_link block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} */ - readonly facet?: string; + readonly customLink?: DashboardWidgetHeatmapDefinitionCustomLink[] | cdktf.IResolvable; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * event block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event Dashboard#event} */ - readonly order: string; + readonly event?: DashboardWidgetHeatmapDefinitionEvent[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetHeatmapDefinitionRequest[] | cdktf.IResolvable; + /** + * yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + */ + readonly yaxis?: DashboardWidgetHeatmapDefinitionYaxis; } -export function dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery): any { +export function dashboardWidgetHeatmapDefinitionToTerraform(struct?: DashboardWidgetHeatmapDefinitionOutputReference | DashboardWidgetHeatmapDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + legend_size: cdktf.stringToTerraform(struct!.legendSize), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + show_legend: cdktf.booleanToTerraform(struct!.showLegend), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetHeatmapDefinitionCustomLinkToTerraform, true)(struct!.customLink), + event: cdktf.listMapper(dashboardWidgetHeatmapDefinitionEventToTerraform, true)(struct!.event), + request: cdktf.listMapper(dashboardWidgetHeatmapDefinitionRequestToTerraform, true)(struct!.request), + yaxis: dashboardWidgetHeatmapDefinitionYaxisToTerraform(struct!.yaxis), } } -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHeatmapDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8014,115 +7640,282 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHeatmapDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._legendSize !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.legendSize = this._legendSize; } - if (this._facet !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.liveSpan = this._liveSpan; } - if (this._order !== undefined) { + if (this._showLegend !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.showLegend = this._showLegend; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._event?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.event = this._event?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } + if (this._yaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.yaxis = this._yaxis?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHeatmapDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._legendSize = undefined; + this._liveSpan = undefined; + this._showLegend = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._event.internalValue = undefined; + this._request.internalValue = undefined; + this._yaxis.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._legendSize = value.legendSize; + this._liveSpan = value.liveSpan; + this._showLegend = value.showLegend; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._event.internalValue = value.event; + this._request.internalValue = value.request; + this._yaxis.internalValue = value.yaxis; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // legend_size - computed: false, optional: true, required: false + private _legendSize?: string; + public get legendSize() { + return this.getStringAttribute('legend_size'); } - public set aggregation(value: string) { - this._aggregation = value; + public set legendSize(value: string) { + this._legendSize = value; + } + public resetLegendSize() { + this._legendSize = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get legendSizeInput() { + return this._legendSize; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); + } + public set liveSpan(value: string) { + this._liveSpan = value; + } + public resetLiveSpan() { + this._liveSpan = undefined; + } + // Temporarily expose input value. Use with caution. + public get liveSpanInput() { + return this._liveSpan; + } + + // show_legend - computed: false, optional: true, required: false + private _showLegend?: boolean | cdktf.IResolvable; + public get showLegend() { + return this.getBooleanAttribute('show_legend'); + } + public set showLegend(value: boolean | cdktf.IResolvable) { + this._showLegend = value; + } + public resetShowLegend() { + this._showLegend = undefined; + } + // Temporarily expose input value. Use with caution. + public get showLegendInput() { + return this._showLegend; + } + + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); + } + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; + } + + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } + + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; + } + + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetHeatmapDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetHeatmapDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; + } + + // event - computed: false, optional: true, required: false + private _event = new DashboardWidgetHeatmapDefinitionEventList(this, "event", false); + public get event() { + return this._event; + } + public putEvent(value: DashboardWidgetHeatmapDefinitionEvent[] | cdktf.IResolvable) { + this._event.internalValue = value; + } + public resetEvent() { + this._event.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get eventInput() { + return this._event.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetHeatmapDefinitionRequestList(this, "request", false); + public get request() { + return this._request; } - public set facet(value: string) { - this._facet = value; + public putRequest(value: DashboardWidgetHeatmapDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetRequest() { + this._request.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get requestInput() { + return this._request.internalValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // yaxis - computed: false, optional: true, required: false + private _yaxis = new DashboardWidgetHeatmapDefinitionYaxisOutputReference(this, "yaxis"); + public get yaxis() { + return this._yaxis; } - public set order(value: string) { - this._order = value; + public putYaxis(value: DashboardWidgetHeatmapDefinitionYaxis) { + this._yaxis.internalValue = value; + } + public resetYaxis() { + this._yaxis.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get yaxisInput() { + return this._yaxis.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy { +export interface DashboardWidgetHostmapDefinitionCustomLink { /** - * The facet name. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly facet?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The maximum number of items in the group. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly limit?: number; + readonly label?: string; /** - * sort_query block + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery; + readonly link?: string; + /** + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + */ + readonly overrideLabel?: string; } -export function dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetHostmapDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -8136,34 +7929,39 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputRef super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionCustomLink | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.isHidden = this._isHidden; } - if (this._limit !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.label = this._label; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -8172,63 +7970,80 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputRef else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set facet(value: string) { - this._facet = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; } - public resetFacet() { - this._facet = undefined; + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get isHiddenInput() { + return this._isHidden; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set limit(value: number) { - this._limit = value; + public set label(value: string) { + this._label = value; } - public resetLimit() { - this._limit = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get labelInput() { + return this._label; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set link(value: string) { + this._link = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get linkInput() { + return this._link; + } + + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); + } + public set overrideLabel(value: string) { + this._overrideLabel = value; + } + public resetOverrideLabel() { + this._overrideLabel = undefined; + } + // Temporarily expose input value. Use with caution. + public get overrideLabelInput() { + return this._overrideLabel; } } -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetHostmapDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionCustomLink[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -8242,11 +8057,11 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByList exte /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHostmapDefinitionCustomLinkOutputReference { + return new DashboardWidgetHostmapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery { /** * The aggregation method. * @@ -8267,7 +8082,7 @@ export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8279,24 +8094,18 @@ export function dashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeT } } -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -8314,21 +8123,15 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -8380,74 +8183,40 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutp return this._interval; } } - -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHostmapDefinitionRequestFillLogQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestFillLogQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillLogQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8458,232 +8227,184 @@ export class DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestFillProcessQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy { /** - * A list of processes. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly filterBy?: string[]; + readonly facet?: string; /** - * The max number of items in the filter list. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * Your chosen metric. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * Your chosen search term. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly searchBy?: string; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestFillProcessQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillProcessQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + sort_query: dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillProcessQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; + internalValueResult.facet = this._facet; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._searchBy !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; + this.resolvableValue = undefined; + this._facet = undefined; this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; + this.resolvableValue = undefined; + this._facet = value.facet; this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this._sortQuery.internalValue = value.sortQuery; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set filterBy(value: string[]) { - this._filterBy = value; + public set facet(value: string) { + this._facet = value; } - public resetFilterBy() { - this._filterBy = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get facetInput() { + return this._facet; } // limit - computed: false, optional: true, required: false @@ -8702,36 +8423,43 @@ export class DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputRefere return this._limit; } - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set metric(value: string) { - this._metric = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute { /** * The aggregation method. * @@ -8752,7 +8480,7 @@ export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8764,18 +8492,24 @@ export function dashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryT } } -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -8793,15 +8527,21 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -8842,18 +8582,218 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutp public get interval() { return this.getNumberAttribute('interval'); } - public set interval(value: number) { - this._interval = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestFillApmQuery { + /** + * The name of the index to query. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + */ + readonly index: string; + /** + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetHostmapDefinitionRequestFillApmQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillApmQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillApmQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + } +} + +export class DashboardWidgetHostmapDefinitionRequestFillApmQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillApmQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillApmQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } + } + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery { /** * The aggregation method. * @@ -8867,14 +8807,14 @@ export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQ */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8882,11 +8822,11 @@ export function dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQu return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8897,7 +8837,7 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -8908,25 +8848,25 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; this._facet = undefined; - this._order = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; this._facet = value.facet; - this._order = value.order; + this._interval = value.interval; } } @@ -8959,177 +8899,23 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery return this._facet; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; - } -} -export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery; -} - -export function dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), - } -} - -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; - } -} - -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery { /** * The aggregation method. * @@ -9143,14 +8929,14 @@ export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute */ readonly facet?: string; /** - * Define the time interval in seconds. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9158,28 +8944,22 @@ export function dashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeT return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -9190,31 +8970,25 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutp hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; - this._interval = value.interval; + this._order = value.order; } } @@ -9247,223 +9021,177 @@ export class DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutp return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetInterval() { - this._interval = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestFillRumQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy { /** - * compute_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery; + readonly facet?: string; /** - * group_by block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy[] | cdktf.IResolvable; + readonly limit?: number; /** - * multi_compute block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute[] | cdktf.IResolvable; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestFillRumQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillRumQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestFillRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._groupBy?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.limit = this._limit; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set facet(value: string) { + this._facet = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get facetInput() { + return this._facet; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get limitInput() { + return this._limit; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute { /** * The aggregation method. * @@ -9484,7 +9212,7 @@ export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryCompute readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9496,18 +9224,24 @@ export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQ } } -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -9525,15 +9259,21 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -9585,40 +9325,74 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuer return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery { + +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestFillLogQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * The facet name. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly facet?: string; + readonly searchQuery?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly order: string; + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillLogQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9629,184 +9403,232 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySort super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._facet !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.searchQuery = this._searchQuery; } - if (this._order !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set order(value: string) { - this._order = value; + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy { +export interface DashboardWidgetHostmapDefinitionRequestFillProcessQuery { /** - * The facet name. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly facet?: string; + readonly filterBy?: string[]; /** - * The maximum number of items in the group. + * The max number of items in the filter list. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort_query block + * Your chosen metric. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery; + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; } -export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillProcessQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.filterBy = this._filterBy; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; + this._filterBy = undefined; this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; + this._filterBy = value.filterBy; this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set facet(value: string) { - this._facet = value; + public set filterBy(value: string[]) { + this._filterBy = value; } - public resetFacet() { - this._facet = undefined; + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get filterByInput() { + return this._filterBy; } // limit - computed: false, optional: true, required: false @@ -9825,43 +9647,36 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutp return this._limit; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; - } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public set metric(value: string) { + this._metric = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get metricInput() { + return this._metric; } -} - -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery { /** * The aggregation method. * @@ -9882,7 +9697,7 @@ export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCo readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9894,24 +9709,18 @@ export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCom } } -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -9929,21 +9738,15 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComput return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -9995,74 +9798,40 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComput return this._interval; } } - -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillSecurityQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10073,183 +9842,115 @@ export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputRefer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + internalValueResult.order = this._order; } + return hasAnyValues ? internalValueResult : undefined; } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestFill { - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetHostmapDefinitionRequestFillApmQuery; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetHostmapDefinitionRequestFillLogQuery; +export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy { /** - * process_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly processQuery?: DashboardWidgetHostmapDefinitionRequestFillProcessQuery; + readonly facet?: string; /** - * rum_query block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly rumQuery?: DashboardWidgetHostmapDefinitionRequestFillRumQuery; + readonly limit?: number; /** - * security_query block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly securityQuery?: DashboardWidgetHostmapDefinitionRequestFillSecurityQuery; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestFillToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFill | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetHostmapDefinitionRequestFillApmQueryToTerraform(struct!.apmQuery), - log_query: dashboardWidgetHostmapDefinitionRequestFillLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetHostmapDefinitionRequestFillProcessQueryToTerraform(struct!.processQuery), - rum_query: dashboardWidgetHostmapDefinitionRequestFillRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetHostmapDefinitionRequestFillSecurityQueryToTerraform(struct!.securityQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestFillOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -10263,49 +9964,34 @@ export class DashboardWidgetHostmapDefinitionRequestFillOutputReference extends super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestFill | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFill | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -10314,114 +10000,63 @@ export class DashboardWidgetHostmapDefinitionRequestFillOutputReference extends else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetHostmapDefinitionRequestFillApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetHostmapDefinitionRequestFillApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetHostmapDefinitionRequestFillLogQuery) { - this._logQuery.internalValue = value; - } - public resetLogQuery() { - this._logQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putProcessQuery(value: DashboardWidgetHostmapDefinitionRequestFillProcessQuery) { - this._processQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get facetInput() { + return this._facet; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetHostmapDefinitionRequestFillRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putRumQuery(value: DashboardWidgetHostmapDefinitionRequestFillRumQuery) { - this._rumQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } - // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putSecurityQuery(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQuery) { - this._securityQuery.internalValue = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetHostmapDefinitionRequestFillList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestFill[] | cdktf.IResolvable +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -10435,11 +10070,11 @@ export class DashboardWidgetHostmapDefinitionRequestFillList extends cdktf.Compl /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestFillOutputReference { - return new DashboardWidgetHostmapDefinitionRequestFillOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute { /** * The aggregation method. * @@ -10460,7 +10095,7 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -10472,18 +10107,24 @@ export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryT } } -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -10501,15 +10142,21 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -10537,31 +10184,231 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutp public set facet(value: string) { this._facet = value; } - public resetFacet() { - this._facet = undefined; + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestFillRumQuery { + /** + * The name of the index to query. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + */ + readonly index: string; + /** + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetHostmapDefinitionRequestFillRumQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillRumQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillRumQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + } +} + +export class DashboardWidgetHostmapDefinitionRequestFillRumQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillRumQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillRumQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } + } + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get groupByInput() { + return this._groupBy.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set interval(value: number) { - this._interval = value; + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery { /** * The aggregation method. * @@ -10575,14 +10422,14 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQ */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -10590,11 +10437,11 @@ export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQu return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10605,7 +10452,7 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -10616,25 +10463,25 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; this._facet = undefined; - this._order = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; this._facet = value.facet; - this._order = value.order; + this._interval = value.interval; } } @@ -10667,177 +10514,23 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery return this._facet; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; - } -} -export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery; -} - -export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery { /** * The aggregation method. * @@ -10851,14 +10544,14 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute */ readonly facet?: string; /** - * Define the time interval in seconds. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -10866,28 +10559,22 @@ export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeT return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -10898,31 +10585,25 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutp hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; - this._interval = value.interval; + this._order = value.order; } } @@ -10955,223 +10636,177 @@ export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutp return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetInterval() { - this._interval = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy { /** - * compute_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery; + readonly facet?: string; /** - * group_by block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy[] | cdktf.IResolvable; + readonly limit?: number; /** - * multi_compute block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute[] | cdktf.IResolvable; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeApmQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._groupBy?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.limit = this._limit; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set facet(value: string) { + this._facet = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get facetInput() { + return this._facet; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get limitInput() { + return this._limit; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery { +export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute { /** * The aggregation method. * @@ -11192,7 +10827,7 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11204,18 +10839,24 @@ export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryT } } -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -11233,15 +10874,21 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -11293,40 +10940,74 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutp return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery { + +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestFillSecurityQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * The facet name. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly facet?: string; + readonly searchQuery?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly order: string; + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery): any { +export function dashboardWidgetHostmapDefinitionRequestFillSecurityQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputReference | DashboardWidgetHostmapDefinitionRequestFillSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11337,115 +11018,183 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFillSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._facet !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.searchQuery = this._searchQuery; } - if (this._order !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set order(value: string) { - this._order = value; + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy { +export interface DashboardWidgetHostmapDefinitionRequestFill { /** - * The facet name. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly facet?: string; + readonly q?: string; /** - * The maximum number of items in the group. + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly limit?: number; + readonly apmQuery?: DashboardWidgetHostmapDefinitionRequestFillApmQuery; + /** + * log_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} + */ + readonly logQuery?: DashboardWidgetHostmapDefinitionRequestFillLogQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetHostmapDefinitionRequestFillProcessQuery; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetHostmapDefinitionRequestFillRumQuery; /** - * sort_query block + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery; + readonly securityQuery?: DashboardWidgetHostmapDefinitionRequestFillSecurityQuery; } -export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestFillToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestFill | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetHostmapDefinitionRequestFillApmQueryToTerraform(struct!.apmQuery), + log_query: dashboardWidgetHostmapDefinitionRequestFillLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetHostmapDefinitionRequestFillProcessQueryToTerraform(struct!.processQuery), + rum_query: dashboardWidgetHostmapDefinitionRequestFillRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetHostmapDefinitionRequestFillSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestFillOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -11459,34 +11208,49 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputRef super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestFill | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.q = this._q; } - if (this._limit !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._logQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestFill | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -11495,63 +11259,114 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputRef else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set facet(value: string) { - this._facet = value; + public set q(value: string) { + this._q = value; } - public resetFacet() { - this._facet = undefined; + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get qInput() { + return this._q; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetHostmapDefinitionRequestFillApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set limit(value: number) { - this._limit = value; + public putApmQuery(value: DashboardWidgetHostmapDefinitionRequestFillApmQuery) { + this._apmQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetHostmapDefinitionRequestFillLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putLogQuery(value: DashboardWidgetHostmapDefinitionRequestFillLogQuery) { + this._logQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetLogQuery() { + this._logQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get logQueryInput() { + return this._logQuery.internalValue; + } + + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetHostmapDefinitionRequestFillProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetHostmapDefinitionRequestFillProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; + } + + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetHostmapDefinitionRequestFillRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; + } + public putRumQuery(value: DashboardWidgetHostmapDefinitionRequestFillRumQuery) { + this._rumQuery.internalValue = value; + } + public resetRumQuery() { + this._rumQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get rumQueryInput() { + return this._rumQuery.internalValue; + } + + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetHostmapDefinitionRequestFillSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; + } + public putSecurityQuery(value: DashboardWidgetHostmapDefinitionRequestFillSecurityQuery) { + this._securityQuery.internalValue = value; + } + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get securityQueryInput() { + return this._securityQuery.internalValue; } } -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetHostmapDefinitionRequestFillList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestFill[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -11565,11 +11380,11 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByList exte /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHostmapDefinitionRequestFillOutputReference { + return new DashboardWidgetHostmapDefinitionRequestFillOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery { /** * The aggregation method. * @@ -11590,7 +11405,7 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11602,24 +11417,18 @@ export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeT } } -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -11637,21 +11446,15 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -11703,74 +11506,40 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutp return this._interval; } } - -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHostmapDefinitionRequestSizeLogQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeLogQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11781,232 +11550,184 @@ export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeProcessQuery { +export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy { /** - * A list of processes. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly filterBy?: string[]; + readonly facet?: string; /** - * The max number of items in the filter list. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * Your chosen metric. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * Your chosen search term. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly searchBy?: string; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestSizeProcessQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeProcessQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + sort_query: dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeProcessQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; + internalValueResult.facet = this._facet; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._searchBy !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; + this.resolvableValue = undefined; + this._facet = undefined; this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; + this.resolvableValue = undefined; + this._facet = value.facet; this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this._sortQuery.internalValue = value.sortQuery; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set filterBy(value: string[]) { - this._filterBy = value; + public set facet(value: string) { + this._facet = value; } - public resetFilterBy() { - this._filterBy = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get facetInput() { + return this._facet; } // limit - computed: false, optional: true, required: false @@ -12025,36 +11746,43 @@ export class DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputRefere return this._limit; } - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set searchBy(value: string) { - this._searchBy = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSearchBy() { - this._searchBy = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery { + +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute { /** * The aggregation method. * @@ -12075,7 +11803,7 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12087,18 +11815,24 @@ export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryT } } -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -12116,15 +11850,21 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutp return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -12152,31 +11892,231 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutp public set facet(value: string) { this._facet = value; } - public resetFacet() { - this._facet = undefined; + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestSizeApmQuery { + /** + * The name of the index to query. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + */ + readonly index: string; + /** + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetHostmapDefinitionRequestSizeApmQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeApmQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeApmQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + } +} + +export class DashboardWidgetHostmapDefinitionRequestSizeApmQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeApmQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeApmQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } + } + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get groupByInput() { + return this._groupBy.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set interval(value: number) { - this._interval = value; + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery { +export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery { /** * The aggregation method. * @@ -12190,14 +12130,14 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQ */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12205,11 +12145,11 @@ export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQu return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -12220,7 +12160,7 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -12231,25 +12171,25 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._order !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; this._facet = undefined; - this._order = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; this._facet = value.facet; - this._order = value.order; + this._interval = value.interval; } } @@ -12282,177 +12222,23 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery return this._facet; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; - } -} -export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery; -} - -export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery { /** * The aggregation method. * @@ -12466,14 +12252,14 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute */ readonly facet?: string; /** - * Define the time interval in seconds. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12481,28 +12267,22 @@ export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeT return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -12513,31 +12293,25 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutp hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; - this._interval = value.interval; + this._order = value.order; } } @@ -12570,223 +12344,177 @@ export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutp return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetInterval() { - this._interval = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get orderInput() { + return this._order; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeRumQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy { /** - * compute_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery; + readonly facet?: string; /** - * group_by block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy[] | cdktf.IResolvable; + readonly limit?: number; /** - * multi_compute block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute[] | cdktf.IResolvable; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeRumQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._groupBy?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.limit = this._limit; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set facet(value: string) { + this._facet = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get facetInput() { + return this._facet; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get limitInput() { + return this._limit; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery { +export interface DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute { /** * The aggregation method. * @@ -12807,7 +12535,7 @@ export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryCompute readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12819,18 +12547,24 @@ export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQ } } -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -12848,15 +12582,21 @@ export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -12908,484 +12648,391 @@ export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuer return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} - -export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), - } -} -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy { +export interface DashboardWidgetHostmapDefinitionRequestSizeLogQuery { /** - * The facet name. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly facet?: string; + readonly index: string; /** - * The maximum number of items in the group. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly limit?: number; + readonly searchQuery?: string; /** - * sort_query block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery; + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeLogQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.index = this._index; } - if (this._limit !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.searchQuery = this._searchQuery; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set limit(value: number) { - this._limit = value; + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute { +export interface DashboardWidgetHostmapDefinitionRequestSizeProcessQuery { /** - * The aggregation method. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly aggregation: string; + readonly filterBy?: string[]; /** - * The facet name. + * The max number of items in the filter list. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly facet?: string; + readonly limit?: number; /** - * Define the time interval in seconds. + * Your chosen metric. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly interval?: number; + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; } -export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeProcessQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.filterBy = this._filterBy; } - if (this._facet !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.limit = this._limit; } - if (this._interval !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._filterBy = undefined; + this._limit = undefined; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._filterBy = value.filterBy; + this._limit = value.limit; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set aggregation(value: string) { - this._aggregation = value; + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get filterByInput() { + return this._filterBy; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set facet(value: string) { - this._facet = value; + public set limit(value: number) { + this._limit = value; } - public resetFacet() { - this._facet = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get limitInput() { + return this._limit; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public resetInterval() { - this._interval = undefined; + public set metric(value: string) { + this._metric = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + public get metricInput() { + return this._metric; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13396,712 +13043,562 @@ export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputRefer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetHostmapDefinitionRequestSize { - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetHostmapDefinitionRequestSizeApmQuery; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetHostmapDefinitionRequestSizeLogQuery; +export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery { /** - * process_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly processQuery?: DashboardWidgetHostmapDefinitionRequestSizeProcessQuery; + readonly aggregation: string; /** - * rum_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly rumQuery?: DashboardWidgetHostmapDefinitionRequestSizeRumQuery; + readonly facet?: string; /** - * security_query block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly securityQuery?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery; + readonly order: string; } -export function dashboardWidgetHostmapDefinitionRequestSizeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSize | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetHostmapDefinitionRequestSizeApmQueryToTerraform(struct!.apmQuery), - log_query: dashboardWidgetHostmapDefinitionRequestSizeLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetHostmapDefinitionRequestSizeProcessQueryToTerraform(struct!.processQuery), - rum_query: dashboardWidgetHostmapDefinitionRequestSizeRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryToTerraform(struct!.securityQuery), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetHostmapDefinitionRequestSizeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequestSize | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSize | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetHostmapDefinitionRequestSizeApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetHostmapDefinitionRequestSizeLogQuery) { - this._logQuery.internalValue = value; - } - public resetLogQuery() { - this._logQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetHostmapDefinitionRequestSizeProcessQuery) { - this._processQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putRumQuery(value: DashboardWidgetHostmapDefinitionRequestSizeRumQuery) { - this._rumQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get facetInput() { + return this._facet; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; - } - public putSecurityQuery(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery) { - this._securityQuery.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get orderInput() { + return this._order; } } - -export class DashboardWidgetHostmapDefinitionRequestSizeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetHostmapDefinitionRequestSize[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - +export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy { /** - * @param index the index of the item to return + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeOutputReference { - return new DashboardWidgetHostmapDefinitionRequestSizeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetHostmapDefinitionRequest { + readonly facet?: string; /** - * fill block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#fill Dashboard#fill} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly fill?: DashboardWidgetHostmapDefinitionRequestFill[] | cdktf.IResolvable; + readonly limit?: number; /** - * size block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#size Dashboard#size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly size?: DashboardWidgetHostmapDefinitionRequestSize[] | cdktf.IResolvable; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery; } -export function dashboardWidgetHostmapDefinitionRequestToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestOutputReference | DashboardWidgetHostmapDefinitionRequest): any { +export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - fill: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillToTerraform, true)(struct!.fill), - size: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeToTerraform, true)(struct!.size), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetHostmapDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionRequest | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._fill?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.fill = this._fill?.internalValue; + internalValueResult.facet = this._facet; } - if (this._size?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.size = this._size?.internalValue; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionRequest | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._fill.internalValue = undefined; - this._size.internalValue = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._fill.internalValue = value.fill; - this._size.internalValue = value.size; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // fill - computed: false, optional: true, required: false - private _fill = new DashboardWidgetHostmapDefinitionRequestFillList(this, "fill", false); - public get fill() { - return this._fill; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putFill(value: DashboardWidgetHostmapDefinitionRequestFill[] | cdktf.IResolvable) { - this._fill.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetFill() { - this._fill.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get fillInput() { - return this._fill.internalValue; + public get limitInput() { + return this._limit; } - // size - computed: false, optional: true, required: false - private _size = new DashboardWidgetHostmapDefinitionRequestSizeList(this, "size", false); - public get size() { - return this._size; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putSize(value: DashboardWidgetHostmapDefinitionRequestSize[] | cdktf.IResolvable) { - this._size.internalValue = value; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSize() { - this._size.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sizeInput() { - return this._size.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetHostmapDefinitionStyle { + +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy[] | cdktf.IResolvable + /** - * The max value to use to color the map. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#fill_max Dashboard#fill_max} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly fillMax?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The min value to use to color the map. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute { + /** + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#fill_min Dashboard#fill_min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly fillMin?: string; + readonly aggregation: string; /** - * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly palette?: string; + readonly facet?: string; /** - * A Boolean indicating whether to flip the palette tones. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette_flip Dashboard#palette_flip} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly paletteFlip?: boolean | cdktf.IResolvable; + readonly interval?: number; } -export function dashboardWidgetHostmapDefinitionStyleToTerraform(struct?: DashboardWidgetHostmapDefinitionStyleOutputReference | DashboardWidgetHostmapDefinitionStyle): any { +export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - fill_max: cdktf.stringToTerraform(struct!.fillMax), - fill_min: cdktf.stringToTerraform(struct!.fillMin), - palette: cdktf.stringToTerraform(struct!.palette), - palette_flip: cdktf.booleanToTerraform(struct!.paletteFlip), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetHostmapDefinitionStyleOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetHostmapDefinitionStyle | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._fillMax !== undefined) { - hasAnyValues = true; - internalValueResult.fillMax = this._fillMax; - } - if (this._fillMin !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.fillMin = this._fillMin; + internalValueResult.aggregation = this._aggregation; } - if (this._palette !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.facet = this._facet; } - if (this._paletteFlip !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.paletteFlip = this._paletteFlip; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinitionStyle | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._fillMax = undefined; - this._fillMin = undefined; - this._palette = undefined; - this._paletteFlip = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._fillMax = value.fillMax; - this._fillMin = value.fillMin; - this._palette = value.palette; - this._paletteFlip = value.paletteFlip; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // fill_max - computed: false, optional: true, required: false - private _fillMax?: string; - public get fillMax() { - return this.getStringAttribute('fill_max'); - } - public set fillMax(value: string) { - this._fillMax = value; - } - public resetFillMax() { - this._fillMax = undefined; - } - // Temporarily expose input value. Use with caution. - public get fillMaxInput() { - return this._fillMax; - } - - // fill_min - computed: false, optional: true, required: false - private _fillMin?: string; - public get fillMin() { - return this.getStringAttribute('fill_min'); - } - public set fillMin(value: string) { - this._fillMin = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetFillMin() { - this._fillMin = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get fillMinInput() { - return this._fillMin; + public get aggregationInput() { + return this._aggregation; } - // palette - computed: false, optional: true, required: false - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set palette(value: string) { - this._palette = value; + public set facet(value: string) { + this._facet = value; } - public resetPalette() { - this._palette = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get facetInput() { + return this._facet; } - // palette_flip - computed: false, optional: true, required: false - private _paletteFlip?: boolean | cdktf.IResolvable; - public get paletteFlip() { - return this.getBooleanAttribute('palette_flip'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set paletteFlip(value: boolean | cdktf.IResolvable) { - this._paletteFlip = value; + public set interval(value: number) { + this._interval = value; } - public resetPaletteFlip() { - this._paletteFlip = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get paletteFlipInput() { - return this._paletteFlip; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetHostmapDefinition { - /** - * The list of tags to group nodes by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group Dashboard#group} - */ - readonly group?: string[]; - /** - * A Boolean indicating whether to show ungrouped nodes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#no_group_hosts Dashboard#no_group_hosts} - */ - readonly noGroupHosts?: boolean | cdktf.IResolvable; - /** - * A Boolean indicating whether to show nodes with no metrics. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#no_metric_hosts Dashboard#no_metric_hosts} - */ - readonly noMetricHosts?: boolean | cdktf.IResolvable; - /** - * The type of node used. Valid values are `host`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#node_type Dashboard#node_type} - */ - readonly nodeType?: string; + +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute[] | cdktf.IResolvable + /** - * The list of tags to filter nodes by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scope Dashboard#scope} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly scope?: string[]; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * @param index the index of the item to return */ - readonly title?: string; + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetHostmapDefinitionRequestSizeRumQuery { /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly titleAlign?: string; + readonly index: string; /** - * The size of the widget's title (defaults to 16). + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly titleSize?: string; + readonly searchQuery?: string; /** - * custom_link block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly customLink?: DashboardWidgetHostmapDefinitionCustomLink[] | cdktf.IResolvable; + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery; /** - * request block + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly request?: DashboardWidgetHostmapDefinitionRequest; + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy[] | cdktf.IResolvable; /** - * style block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly style?: DashboardWidgetHostmapDefinitionStyle; + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetHostmapDefinitionToTerraform(struct?: DashboardWidgetHostmapDefinitionOutputReference | DashboardWidgetHostmapDefinition): any { +export function dashboardWidgetHostmapDefinitionRequestSizeRumQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeRumQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - group: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.group), - no_group_hosts: cdktf.booleanToTerraform(struct!.noGroupHosts), - no_metric_hosts: cdktf.booleanToTerraform(struct!.noMetricHosts), - node_type: cdktf.stringToTerraform(struct!.nodeType), - scope: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.scope), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetHostmapDefinitionCustomLinkToTerraform, true)(struct!.customLink), - request: dashboardWidgetHostmapDefinitionRequestToTerraform(struct!.request), - style: dashboardWidgetHostmapDefinitionStyleToTerraform(struct!.style), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetHostmapDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14112,283 +13609,284 @@ export class DashboardWidgetHostmapDefinitionOutputReference extends cdktf.Compl super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetHostmapDefinition | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._group !== undefined) { - hasAnyValues = true; - internalValueResult.group = this._group; - } - if (this._noGroupHosts !== undefined) { - hasAnyValues = true; - internalValueResult.noGroupHosts = this._noGroupHosts; - } - if (this._noMetricHosts !== undefined) { - hasAnyValues = true; - internalValueResult.noMetricHosts = this._noMetricHosts; - } - if (this._nodeType !== undefined) { - hasAnyValues = true; - internalValueResult.nodeType = this._nodeType; - } - if (this._scope !== undefined) { - hasAnyValues = true; - internalValueResult.scope = this._scope; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; + internalValueResult.index = this._index; } - if (this._titleSize !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.searchQuery = this._searchQuery; } - if (this._customLink?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._request?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._style?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.style = this._style?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetHostmapDefinition | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._group = undefined; - this._noGroupHosts = undefined; - this._noMetricHosts = undefined; - this._nodeType = undefined; - this._scope = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._request.internalValue = undefined; - this._style.internalValue = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._group = value.group; - this._noGroupHosts = value.noGroupHosts; - this._noMetricHosts = value.noMetricHosts; - this._nodeType = value.nodeType; - this._scope = value.scope; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._request.internalValue = value.request; - this._style.internalValue = value.style; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // group - computed: false, optional: true, required: false - private _group?: string[]; - public get group() { - return this.getListAttribute('group'); - } - public set group(value: string[]) { - this._group = value; - } - public resetGroup() { - this._group = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupInput() { - return this._group; - } - - // no_group_hosts - computed: false, optional: true, required: false - private _noGroupHosts?: boolean | cdktf.IResolvable; - public get noGroupHosts() { - return this.getBooleanAttribute('no_group_hosts'); - } - public set noGroupHosts(value: boolean | cdktf.IResolvable) { - this._noGroupHosts = value; - } - public resetNoGroupHosts() { - this._noGroupHosts = undefined; - } - // Temporarily expose input value. Use with caution. - public get noGroupHostsInput() { - return this._noGroupHosts; - } - - // no_metric_hosts - computed: false, optional: true, required: false - private _noMetricHosts?: boolean | cdktf.IResolvable; - public get noMetricHosts() { - return this.getBooleanAttribute('no_metric_hosts'); - } - public set noMetricHosts(value: boolean | cdktf.IResolvable) { - this._noMetricHosts = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetNoMetricHosts() { - this._noMetricHosts = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get noMetricHostsInput() { - return this._noMetricHosts; + public get indexInput() { + return this._index; } - // node_type - computed: false, optional: true, required: false - private _nodeType?: string; - public get nodeType() { - return this.getStringAttribute('node_type'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set nodeType(value: string) { - this._nodeType = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetNodeType() { - this._nodeType = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get nodeTypeInput() { - return this._nodeType; + public get searchQueryInput() { + return this._searchQuery; } - // scope - computed: false, optional: true, required: false - private _scope?: string[]; - public get scope() { - return this.getListAttribute('scope'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set scope(value: string[]) { - this._scope = value; + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetScope() { - this._scope = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get scopeInput() { - return this._scope; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set title(value: string) { - this._title = value; + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetTitle() { - this._title = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get groupByInput() { + return this._groupBy.internalValue; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set titleAlign(value: string) { - this._titleAlign = value; + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get multiComputeInput() { + return this._multiCompute.internalValue; } +} +export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); +export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public set titleSize(value: string) { - this._titleSize = value; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } - public resetTitleSize() { - this._titleSize = undefined; +} + +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetHostmapDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } } - public putCustomLink(value: DashboardWidgetHostmapDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get aggregationInput() { + return this._aggregation; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetHostmapDefinitionRequestOutputReference(this, "request"); - public get request() { - return this._request; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putRequest(value: DashboardWidgetHostmapDefinitionRequest) { - this._request.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetRequest() { - this._request.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get facetInput() { + return this._facet; } - // style - computed: false, optional: true, required: false - private _style = new DashboardWidgetHostmapDefinitionStyleOutputReference(this, "style"); - public get style() { - return this._style; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putStyle(value: DashboardWidgetHostmapDefinitionStyle) { - this._style.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetStyle() { - this._style.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get styleInput() { - return this._style.internalValue; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetIframeDefinition { +export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery { /** - * The URL to use as a data source for the widget. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#url Dashboard#url} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly url: string; + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; } -export function dashboardWidgetIframeDefinitionToTerraform(struct?: DashboardWidgetIframeDefinitionOutputReference | DashboardWidgetIframeDefinition): any { +export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - url: cdktf.stringToTerraform(struct!.url), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetIframeDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14399,334 +13897,272 @@ export class DashboardWidgetIframeDefinitionOutputReference extends cdktf.Comple super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetIframeDefinition | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._url !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.url = this._url; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetIframeDefinition | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._url = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._url = value.url; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // url - computed: false, optional: false, required: true - private _url?: string; - public get url() { - return this.getStringAttribute('url'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set url(value: string) { - this._url = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get urlInput() { - return this._url; + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; } } -export interface DashboardWidgetImageDefinition { - /** - * Whether to display a background or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_background Dashboard#has_background} - */ - readonly hasBackground?: boolean | cdktf.IResolvable; - /** - * Whether to display a border or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_border Dashboard#has_border} - */ - readonly hasBorder?: boolean | cdktf.IResolvable; - /** - * The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#horizontal_align Dashboard#horizontal_align} - */ - readonly horizontalAlign?: string; - /** - * The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#margin Dashboard#margin} - */ - readonly margin?: string; - /** - * The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sizing Dashboard#sizing} - */ - readonly sizing?: string; +export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy { /** - * The URL to use as a data source for the widget. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#url Dashboard#url} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly url: string; + readonly facet?: string; /** - * The URL in dark mode to use as a data source for the widget. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#url_dark_theme Dashboard#url_dark_theme} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly urlDarkTheme?: string; + readonly limit?: number; /** - * The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#vertical_align Dashboard#vertical_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly verticalAlign?: string; + readonly sortQuery?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery; } -export function dashboardWidgetImageDefinitionToTerraform(struct?: DashboardWidgetImageDefinitionOutputReference | DashboardWidgetImageDefinition): any { +export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - has_background: cdktf.booleanToTerraform(struct!.hasBackground), - has_border: cdktf.booleanToTerraform(struct!.hasBorder), - horizontal_align: cdktf.stringToTerraform(struct!.horizontalAlign), - margin: cdktf.stringToTerraform(struct!.margin), - sizing: cdktf.stringToTerraform(struct!.sizing), - url: cdktf.stringToTerraform(struct!.url), - url_dark_theme: cdktf.stringToTerraform(struct!.urlDarkTheme), - vertical_align: cdktf.stringToTerraform(struct!.verticalAlign), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetImageDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetImageDefinition | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._hasBackground !== undefined) { - hasAnyValues = true; - internalValueResult.hasBackground = this._hasBackground; - } - if (this._hasBorder !== undefined) { - hasAnyValues = true; - internalValueResult.hasBorder = this._hasBorder; - } - if (this._horizontalAlign !== undefined) { - hasAnyValues = true; - internalValueResult.horizontalAlign = this._horizontalAlign; - } - if (this._margin !== undefined) { - hasAnyValues = true; - internalValueResult.margin = this._margin; - } - if (this._sizing !== undefined) { - hasAnyValues = true; - internalValueResult.sizing = this._sizing; - } - if (this._url !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.url = this._url; + internalValueResult.facet = this._facet; } - if (this._urlDarkTheme !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.urlDarkTheme = this._urlDarkTheme; + internalValueResult.limit = this._limit; } - if (this._verticalAlign !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.verticalAlign = this._verticalAlign; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetImageDefinition | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._hasBackground = undefined; - this._hasBorder = undefined; - this._horizontalAlign = undefined; - this._margin = undefined; - this._sizing = undefined; - this._url = undefined; - this._urlDarkTheme = undefined; - this._verticalAlign = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._hasBackground = value.hasBackground; - this._hasBorder = value.hasBorder; - this._horizontalAlign = value.horizontalAlign; - this._margin = value.margin; - this._sizing = value.sizing; - this._url = value.url; - this._urlDarkTheme = value.urlDarkTheme; - this._verticalAlign = value.verticalAlign; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // has_background - computed: false, optional: true, required: false - private _hasBackground?: boolean | cdktf.IResolvable; - public get hasBackground() { - return this.getBooleanAttribute('has_background'); - } - public set hasBackground(value: boolean | cdktf.IResolvable) { - this._hasBackground = value; - } - public resetHasBackground() { - this._hasBackground = undefined; - } - // Temporarily expose input value. Use with caution. - public get hasBackgroundInput() { - return this._hasBackground; - } - - // has_border - computed: false, optional: true, required: false - private _hasBorder?: boolean | cdktf.IResolvable; - public get hasBorder() { - return this.getBooleanAttribute('has_border'); - } - public set hasBorder(value: boolean | cdktf.IResolvable) { - this._hasBorder = value; - } - public resetHasBorder() { - this._hasBorder = undefined; - } - // Temporarily expose input value. Use with caution. - public get hasBorderInput() { - return this._hasBorder; - } - - // horizontal_align - computed: false, optional: true, required: false - private _horizontalAlign?: string; - public get horizontalAlign() { - return this.getStringAttribute('horizontal_align'); - } - public set horizontalAlign(value: string) { - this._horizontalAlign = value; - } - public resetHorizontalAlign() { - this._horizontalAlign = undefined; - } - // Temporarily expose input value. Use with caution. - public get horizontalAlignInput() { - return this._horizontalAlign; - } - - // margin - computed: false, optional: true, required: false - private _margin?: string; - public get margin() { - return this.getStringAttribute('margin'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set margin(value: string) { - this._margin = value; + public set facet(value: string) { + this._facet = value; } - public resetMargin() { - this._margin = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get marginInput() { - return this._margin; + public get facetInput() { + return this._facet; } - // sizing - computed: false, optional: true, required: false - private _sizing?: string; - public get sizing() { - return this.getStringAttribute('sizing'); - } - public set sizing(value: string) { - this._sizing = value; - } - public resetSizing() { - this._sizing = undefined; - } - // Temporarily expose input value. Use with caution. - public get sizingInput() { - return this._sizing; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - - // url - computed: false, optional: false, required: true - private _url?: string; - public get url() { - return this.getStringAttribute('url'); + public set limit(value: number) { + this._limit = value; } - public set url(value: string) { - this._url = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get urlInput() { - return this._url; + public get limitInput() { + return this._limit; } - // url_dark_theme - computed: false, optional: true, required: false - private _urlDarkTheme?: string; - public get urlDarkTheme() { - return this.getStringAttribute('url_dark_theme'); - } - public set urlDarkTheme(value: string) { - this._urlDarkTheme = value; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public resetUrlDarkTheme() { - this._urlDarkTheme = undefined; + public putSortQuery(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get urlDarkThemeInput() { - return this._urlDarkTheme; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // vertical_align - computed: false, optional: true, required: false - private _verticalAlign?: string; - public get verticalAlign() { - return this.getStringAttribute('vertical_align'); - } - public set verticalAlign(value: string) { - this._verticalAlign = value; - } - public resetVerticalAlign() { - this._verticalAlign = undefined; +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get verticalAlignInput() { - return this._verticalAlign; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetListStreamDefinitionRequestColumns { +export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute { /** - * Widget column field. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#field Dashboard#field} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly field: string; + readonly aggregation: string; /** - * Widget column width. Valid values are `auto`, `compact`, `full`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#width Dashboard#width} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly width: string; + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetListStreamDefinitionRequestColumnsToTerraform(struct?: DashboardWidgetListStreamDefinitionRequestColumns | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - field: cdktf.stringToTerraform(struct!.field), - width: cdktf.stringToTerraform(struct!.width), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetListStreamDefinitionRequestColumnsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14740,29 +14176,34 @@ export class DashboardWidgetListStreamDefinitionRequestColumnsOutputReference ex super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetListStreamDefinitionRequestColumns | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._field !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.field = this._field; + internalValueResult.aggregation = this._aggregation; } - if (this._width !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.width = this._width; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetListStreamDefinitionRequestColumns | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._field = undefined; - this._width = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -14771,40 +14212,60 @@ export class DashboardWidgetListStreamDefinitionRequestColumnsOutputReference ex else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._field = value.field; - this._width = value.width; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // field - computed: false, optional: false, required: true - private _field?: string; - public get field() { - return this.getStringAttribute('field'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set field(value: string) { - this._field = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get fieldInput() { - return this._field; + public get aggregationInput() { + return this._aggregation; } - // width - computed: false, optional: false, required: true - private _width?: string; - public get width() { - return this.getStringAttribute('width'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set width(value: string) { - this._width = value; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get widthInput() { - return this._width; + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export class DashboardWidgetListStreamDefinitionRequestColumnsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetListStreamDefinitionRequestColumns[] | cdktf.IResolvable +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -14818,44 +14279,58 @@ export class DashboardWidgetListStreamDefinitionRequestColumnsList extends cdktf /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetListStreamDefinitionRequestColumnsOutputReference { - return new DashboardWidgetListStreamDefinitionRequestColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetListStreamDefinitionRequestQuery { +export interface DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery { /** - * Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `rum_issue_stream`, `apm_issue_stream`, `logs_pattern_stream`. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly dataSource: string; + readonly index: string; /** - * List of indexes. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly indexes?: string[]; + readonly searchQuery?: string; /** - * Widget query. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_string Dashboard#query_string} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly queryString?: string; + readonly computeQuery?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetListStreamDefinitionRequestQueryToTerraform(struct?: DashboardWidgetListStreamDefinitionRequestQueryOutputReference | DashboardWidgetListStreamDefinitionRequestQuery): any { +export function dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputReference | DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), - query_string: cdktf.stringToTerraform(struct!.queryString), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetListStreamDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14866,118 +14341,183 @@ export class DashboardWidgetListStreamDefinitionRequestQueryOutputReference exte super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetListStreamDefinitionRequestQuery | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.index = this._index; } - if (this._indexes !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.searchQuery = this._searchQuery; } - if (this._queryString !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.queryString = this._queryString; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetListStreamDefinitionRequestQuery | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._indexes = undefined; - this._queryString = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._indexes = value.indexes; - this._queryString = value.queryString; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set dataSource(value: string) { - this._dataSource = value; + public putComputeQuery(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set indexes(value: string[]) { - this._indexes = value; + public putGroupBy(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetIndexes() { - this._indexes = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get groupByInput() { + return this._groupBy.internalValue; } - // query_string - computed: false, optional: true, required: false - private _queryString?: string; - public get queryString() { - return this.getStringAttribute('query_string'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set queryString(value: string) { - this._queryString = value; + public putMultiCompute(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetQueryString() { - this._queryString = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get queryStringInput() { - return this._queryString; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetListStreamDefinitionRequest { +export interface DashboardWidgetHostmapDefinitionRequestSize { /** - * Widget response format. Valid values are `event_list`. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#response_format Dashboard#response_format} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly responseFormat: string; + readonly q?: string; /** - * columns block + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#columns Dashboard#columns} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly columns: DashboardWidgetListStreamDefinitionRequestColumns[] | cdktf.IResolvable; + readonly apmQuery?: DashboardWidgetHostmapDefinitionRequestSizeApmQuery; /** - * query block + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly query: DashboardWidgetListStreamDefinitionRequestQuery; + readonly logQuery?: DashboardWidgetHostmapDefinitionRequestSizeLogQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetHostmapDefinitionRequestSizeProcessQuery; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetHostmapDefinitionRequestSizeRumQuery; + /** + * security_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + */ + readonly securityQuery?: DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery; } -export function dashboardWidgetListStreamDefinitionRequestToTerraform(struct?: DashboardWidgetListStreamDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetHostmapDefinitionRequestSizeToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestSize | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - response_format: cdktf.stringToTerraform(struct!.responseFormat), - columns: cdktf.listMapper(dashboardWidgetListStreamDefinitionRequestColumnsToTerraform, true)(struct!.columns), - query: dashboardWidgetListStreamDefinitionRequestQueryToTerraform(struct!.query), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetHostmapDefinitionRequestSizeApmQueryToTerraform(struct!.apmQuery), + log_query: dashboardWidgetHostmapDefinitionRequestSizeLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetHostmapDefinitionRequestSizeProcessQueryToTerraform(struct!.processQuery), + rum_query: dashboardWidgetHostmapDefinitionRequestSizeRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetHostmapDefinitionRequestSizeSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetListStreamDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestSizeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14991,34 +14531,49 @@ export class DashboardWidgetListStreamDefinitionRequestOutputReference extends c super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetListStreamDefinitionRequest | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequestSize | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._responseFormat !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.responseFormat = this._responseFormat; + internalValueResult.q = this._q; } - if (this._columns?.internalValue !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.columns = this._columns?.internalValue; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._query?.internalValue !== undefined) { + if (this._logQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetListStreamDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequestSize | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._responseFormat = undefined; - this._columns.internalValue = undefined; - this._query.internalValue = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -15027,54 +14582,114 @@ export class DashboardWidgetListStreamDefinitionRequestOutputReference extends c else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._responseFormat = value.responseFormat; - this._columns.internalValue = value.columns; - this._query.internalValue = value.query; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // response_format - computed: false, optional: false, required: true - private _responseFormat?: string; - public get responseFormat() { - return this.getStringAttribute('response_format'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set responseFormat(value: string) { - this._responseFormat = value; + public set q(value: string) { + this._q = value; + } + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get responseFormatInput() { - return this._responseFormat; + public get qInput() { + return this._q; } - // columns - computed: false, optional: false, required: true - private _columns = new DashboardWidgetListStreamDefinitionRequestColumnsList(this, "columns", false); - public get columns() { - return this._columns; + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetHostmapDefinitionRequestSizeApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public putColumns(value: DashboardWidgetListStreamDefinitionRequestColumns[] | cdktf.IResolvable) { - this._columns.internalValue = value; + public putApmQuery(value: DashboardWidgetHostmapDefinitionRequestSizeApmQuery) { + this._apmQuery.internalValue = value; + } + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get columnsInput() { - return this._columns.internalValue; + public get apmQueryInput() { + return this._apmQuery.internalValue; + } + + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetHostmapDefinitionRequestSizeLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; + } + public putLogQuery(value: DashboardWidgetHostmapDefinitionRequestSizeLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get logQueryInput() { + return this._logQuery.internalValue; + } + + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetHostmapDefinitionRequestSizeProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetHostmapDefinitionRequestSizeProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; + } + + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetHostmapDefinitionRequestSizeRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; + } + public putRumQuery(value: DashboardWidgetHostmapDefinitionRequestSizeRumQuery) { + this._rumQuery.internalValue = value; + } + public resetRumQuery() { + this._rumQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get rumQueryInput() { + return this._rumQuery.internalValue; + } + + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetHostmapDefinitionRequestSizeSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - - // query - computed: false, optional: false, required: true - private _query = new DashboardWidgetListStreamDefinitionRequestQueryOutputReference(this, "query"); - public get query() { - return this._query; + public putSecurityQuery(value: DashboardWidgetHostmapDefinitionRequestSizeSecurityQuery) { + this._securityQuery.internalValue = value; } - public putQuery(value: DashboardWidgetListStreamDefinitionRequestQuery) { - this._query.internalValue = value; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; + public get securityQueryInput() { + return this._securityQuery.internalValue; } } -export class DashboardWidgetListStreamDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetListStreamDefinitionRequest[] | cdktf.IResolvable +export class DashboardWidgetHostmapDefinitionRequestSizeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetHostmapDefinitionRequestSize[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -15088,51 +14703,37 @@ export class DashboardWidgetListStreamDefinitionRequestList extends cdktf.Comple /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetListStreamDefinitionRequestOutputReference { - return new DashboardWidgetListStreamDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetHostmapDefinitionRequestSizeOutputReference { + return new DashboardWidgetHostmapDefinitionRequestSizeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetListStreamDefinition { - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; +export interface DashboardWidgetHostmapDefinitionRequest { /** - * The size of the widget's title. Default is 16. + * fill block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#fill Dashboard#fill} */ - readonly titleSize?: string; + readonly fill?: DashboardWidgetHostmapDefinitionRequestFill[] | cdktf.IResolvable; /** - * request block + * size block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#size Dashboard#size} */ - readonly request: DashboardWidgetListStreamDefinitionRequest[] | cdktf.IResolvable; + readonly size?: DashboardWidgetHostmapDefinitionRequestSize[] | cdktf.IResolvable; } -export function dashboardWidgetListStreamDefinitionToTerraform(struct?: DashboardWidgetListStreamDefinitionOutputReference | DashboardWidgetListStreamDefinition): any { +export function dashboardWidgetHostmapDefinitionRequestToTerraform(struct?: DashboardWidgetHostmapDefinitionRequestOutputReference | DashboardWidgetHostmapDefinitionRequest): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - request: cdktf.listMapper(dashboardWidgetListStreamDefinitionRequestToTerraform, true)(struct!.request), + fill: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestFillToTerraform, true)(struct!.fill), + size: cdktf.listMapper(dashboardWidgetHostmapDefinitionRequestSizeToTerraform, true)(struct!.size), } } -export class DashboardWidgetListStreamDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15143,133 +14744,106 @@ export class DashboardWidgetListStreamDefinitionOutputReference extends cdktf.Co super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetListStreamDefinition | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionRequest | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { + if (this._fill?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.fill = this._fill?.internalValue; } - if (this._request?.internalValue !== undefined) { + if (this._size?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.size = this._size?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetListStreamDefinition | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinitionRequest | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._request.internalValue = undefined; + this._fill.internalValue = undefined; + this._size.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._request.internalValue = value.request; + this._fill.internalValue = value.fill; + this._size.internalValue = value.size; } } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; - } - - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // fill - computed: false, optional: true, required: false + private _fill = new DashboardWidgetHostmapDefinitionRequestFillList(this, "fill", false); + public get fill() { + return this._fill; } - public set titleAlign(value: string) { - this._titleAlign = value; + public putFill(value: DashboardWidgetHostmapDefinitionRequestFill[] | cdktf.IResolvable) { + this._fill.internalValue = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetFill() { + this._fill.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get fillInput() { + return this._fill.internalValue; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; - } - public resetTitleSize() { - this._titleSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + // size - computed: false, optional: true, required: false + private _size = new DashboardWidgetHostmapDefinitionRequestSizeList(this, "size", false); + public get size() { + return this._size; } - - // request - computed: false, optional: false, required: true - private _request = new DashboardWidgetListStreamDefinitionRequestList(this, "request", false); - public get request() { - return this._request; + public putSize(value: DashboardWidgetHostmapDefinitionRequestSize[] | cdktf.IResolvable) { + this._size.internalValue = value; } - public putRequest(value: DashboardWidgetListStreamDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; + public resetSize() { + this._size.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get sizeInput() { + return this._size.internalValue; } } -export interface DashboardWidgetLogStreamDefinitionSort { +export interface DashboardWidgetHostmapDefinitionStyle { /** - * The facet path for the column + * The max value to use to color the map. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#column Dashboard#column} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#fill_max Dashboard#fill_max} */ - readonly column: string; + readonly fillMax?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The min value to use to color the map. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#fill_min Dashboard#fill_min} */ - readonly order: string; + readonly fillMin?: string; + /** + * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette?: string; + /** + * A Boolean indicating whether to flip the palette tones. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette_flip Dashboard#palette_flip} + */ + readonly paletteFlip?: boolean | cdktf.IResolvable; } -export function dashboardWidgetLogStreamDefinitionSortToTerraform(struct?: DashboardWidgetLogStreamDefinitionSortOutputReference | DashboardWidgetLogStreamDefinitionSort): any { +export function dashboardWidgetHostmapDefinitionStyleToTerraform(struct?: DashboardWidgetHostmapDefinitionStyleOutputReference | DashboardWidgetHostmapDefinitionStyle): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - column: cdktf.stringToTerraform(struct!.column), - order: cdktf.stringToTerraform(struct!.order), + fill_max: cdktf.stringToTerraform(struct!.fillMax), + fill_min: cdktf.stringToTerraform(struct!.fillMin), + palette: cdktf.stringToTerraform(struct!.palette), + palette_flip: cdktf.booleanToTerraform(struct!.paletteFlip), } } -export class DashboardWidgetLogStreamDefinitionSortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionStyleOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15280,102 +14854,140 @@ export class DashboardWidgetLogStreamDefinitionSortOutputReference extends cdktf super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetLogStreamDefinitionSort | undefined { + public get internalValue(): DashboardWidgetHostmapDefinitionStyle | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._column !== undefined) { + if (this._fillMax !== undefined) { hasAnyValues = true; - internalValueResult.column = this._column; + internalValueResult.fillMax = this._fillMax; } - if (this._order !== undefined) { + if (this._fillMin !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.fillMin = this._fillMin; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._paletteFlip !== undefined) { + hasAnyValues = true; + internalValueResult.paletteFlip = this._paletteFlip; } return hasAnyValues ? internalValueResult : undefined; } - - public set internalValue(value: DashboardWidgetLogStreamDefinitionSort | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._column = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._column = value.column; - this._order = value.order; - } + + public set internalValue(value: DashboardWidgetHostmapDefinitionStyle | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._fillMax = undefined; + this._fillMin = undefined; + this._palette = undefined; + this._paletteFlip = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._fillMax = value.fillMax; + this._fillMin = value.fillMin; + this._palette = value.palette; + this._paletteFlip = value.paletteFlip; + } + } + + // fill_max - computed: false, optional: true, required: false + private _fillMax?: string; + public get fillMax() { + return this.getStringAttribute('fill_max'); + } + public set fillMax(value: string) { + this._fillMax = value; + } + public resetFillMax() { + this._fillMax = undefined; + } + // Temporarily expose input value. Use with caution. + public get fillMaxInput() { + return this._fillMax; + } + + // fill_min - computed: false, optional: true, required: false + private _fillMin?: string; + public get fillMin() { + return this.getStringAttribute('fill_min'); + } + public set fillMin(value: string) { + this._fillMin = value; + } + public resetFillMin() { + this._fillMin = undefined; + } + // Temporarily expose input value. Use with caution. + public get fillMinInput() { + return this._fillMin; } - // column - computed: false, optional: false, required: true - private _column?: string; - public get column() { - return this.getStringAttribute('column'); + // palette - computed: false, optional: true, required: false + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public set column(value: string) { - this._column = value; + public set palette(value: string) { + this._palette = value; + } + public resetPalette() { + this._palette = undefined; } // Temporarily expose input value. Use with caution. - public get columnInput() { - return this._column; + public get paletteInput() { + return this._palette; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // palette_flip - computed: false, optional: true, required: false + private _paletteFlip?: boolean | cdktf.IResolvable; + public get paletteFlip() { + return this.getBooleanAttribute('palette_flip'); } - public set order(value: string) { - this._order = value; + public set paletteFlip(value: boolean | cdktf.IResolvable) { + this._paletteFlip = value; + } + public resetPaletteFlip() { + this._paletteFlip = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get paletteFlipInput() { + return this._paletteFlip; } } -export interface DashboardWidgetLogStreamDefinition { - /** - * Stringified list of columns to use, for example: `["column1","column2","column3"]`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#columns Dashboard#columns} - */ - readonly columns?: string[]; - /** - * An array of index names to query in the stream. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} - */ - readonly indexes?: string[]; +export interface DashboardWidgetHostmapDefinition { /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. + * The list of tags to group nodes by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group Dashboard#group} */ - readonly liveSpan?: string; + readonly group?: string[]; /** - * The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. + * A Boolean indicating whether to show ungrouped nodes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#message_display Dashboard#message_display} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#no_group_hosts Dashboard#no_group_hosts} */ - readonly messageDisplay?: string; + readonly noGroupHosts?: boolean | cdktf.IResolvable; /** - * The query to use in the widget. + * A Boolean indicating whether to show nodes with no metrics. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#no_metric_hosts Dashboard#no_metric_hosts} */ - readonly query?: string; + readonly noMetricHosts?: boolean | cdktf.IResolvable; /** - * If the date column should be displayed. + * The type of node used. Valid values are `host`, `container`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_date_column Dashboard#show_date_column} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#node_type Dashboard#node_type} */ - readonly showDateColumn?: boolean | cdktf.IResolvable; + readonly nodeType?: string; /** - * If the message column should be displayed. + * The list of tags to filter nodes by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_message_column Dashboard#show_message_column} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scope Dashboard#scope} */ - readonly showMessageColumn?: boolean | cdktf.IResolvable; + readonly scope?: string[]; /** * The title of the widget. * @@ -15395,34 +15007,46 @@ export interface DashboardWidgetLogStreamDefinition { */ readonly titleSize?: string; /** - * sort block + * custom_link block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} */ - readonly sort?: DashboardWidgetLogStreamDefinitionSort; + readonly customLink?: DashboardWidgetHostmapDefinitionCustomLink[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetHostmapDefinitionRequest; + /** + * style block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + */ + readonly style?: DashboardWidgetHostmapDefinitionStyle; } -export function dashboardWidgetLogStreamDefinitionToTerraform(struct?: DashboardWidgetLogStreamDefinitionOutputReference | DashboardWidgetLogStreamDefinition): any { +export function dashboardWidgetHostmapDefinitionToTerraform(struct?: DashboardWidgetHostmapDefinitionOutputReference | DashboardWidgetHostmapDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.columns), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - message_display: cdktf.stringToTerraform(struct!.messageDisplay), - query: cdktf.stringToTerraform(struct!.query), - show_date_column: cdktf.booleanToTerraform(struct!.showDateColumn), - show_message_column: cdktf.booleanToTerraform(struct!.showMessageColumn), + group: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.group), + no_group_hosts: cdktf.booleanToTerraform(struct!.noGroupHosts), + no_metric_hosts: cdktf.booleanToTerraform(struct!.noMetricHosts), + node_type: cdktf.stringToTerraform(struct!.nodeType), + scope: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.scope), title: cdktf.stringToTerraform(struct!.title), title_align: cdktf.stringToTerraform(struct!.titleAlign), title_size: cdktf.stringToTerraform(struct!.titleSize), - sort: dashboardWidgetLogStreamDefinitionSortToTerraform(struct!.sort), + custom_link: cdktf.listMapper(dashboardWidgetHostmapDefinitionCustomLinkToTerraform, true)(struct!.customLink), + request: dashboardWidgetHostmapDefinitionRequestToTerraform(struct!.request), + style: dashboardWidgetHostmapDefinitionStyleToTerraform(struct!.style), } } -export class DashboardWidgetLogStreamDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetHostmapDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15433,36 +15057,28 @@ export class DashboardWidgetLogStreamDefinitionOutputReference extends cdktf.Com super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetLogStreamDefinition | undefined { + public get internalValue(): DashboardWidgetHostmapDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._columns !== undefined) { - hasAnyValues = true; - internalValueResult.columns = this._columns; - } - if (this._indexes !== undefined) { - hasAnyValues = true; - internalValueResult.indexes = this._indexes; - } - if (this._liveSpan !== undefined) { + if (this._group !== undefined) { hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; + internalValueResult.group = this._group; } - if (this._messageDisplay !== undefined) { + if (this._noGroupHosts !== undefined) { hasAnyValues = true; - internalValueResult.messageDisplay = this._messageDisplay; + internalValueResult.noGroupHosts = this._noGroupHosts; } - if (this._query !== undefined) { + if (this._noMetricHosts !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.noMetricHosts = this._noMetricHosts; } - if (this._showDateColumn !== undefined) { + if (this._nodeType !== undefined) { hasAnyValues = true; - internalValueResult.showDateColumn = this._showDateColumn; + internalValueResult.nodeType = this._nodeType; } - if (this._showMessageColumn !== undefined) { + if (this._scope !== undefined) { hasAnyValues = true; - internalValueResult.showMessageColumn = this._showMessageColumn; + internalValueResult.scope = this._scope; } if (this._title !== undefined) { hasAnyValues = true; @@ -15476,154 +15092,130 @@ export class DashboardWidgetLogStreamDefinitionOutputReference extends cdktf.Com hasAnyValues = true; internalValueResult.titleSize = this._titleSize; } - if (this._sort?.internalValue !== undefined) { + if (this._customLink?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } + if (this._style?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.style = this._style?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetLogStreamDefinition | undefined) { + public set internalValue(value: DashboardWidgetHostmapDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._columns = undefined; - this._indexes = undefined; - this._liveSpan = undefined; - this._messageDisplay = undefined; - this._query = undefined; - this._showDateColumn = undefined; - this._showMessageColumn = undefined; + this._group = undefined; + this._noGroupHosts = undefined; + this._noMetricHosts = undefined; + this._nodeType = undefined; + this._scope = undefined; this._title = undefined; this._titleAlign = undefined; this._titleSize = undefined; - this._sort.internalValue = undefined; + this._customLink.internalValue = undefined; + this._request.internalValue = undefined; + this._style.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._columns = value.columns; - this._indexes = value.indexes; - this._liveSpan = value.liveSpan; - this._messageDisplay = value.messageDisplay; - this._query = value.query; - this._showDateColumn = value.showDateColumn; - this._showMessageColumn = value.showMessageColumn; + this._group = value.group; + this._noGroupHosts = value.noGroupHosts; + this._noMetricHosts = value.noMetricHosts; + this._nodeType = value.nodeType; + this._scope = value.scope; this._title = value.title; this._titleAlign = value.titleAlign; this._titleSize = value.titleSize; - this._sort.internalValue = value.sort; + this._customLink.internalValue = value.customLink; + this._request.internalValue = value.request; + this._style.internalValue = value.style; } } - // columns - computed: false, optional: true, required: false - private _columns?: string[]; - public get columns() { - return this.getListAttribute('columns'); - } - public set columns(value: string[]) { - this._columns = value; - } - public resetColumns() { - this._columns = undefined; - } - // Temporarily expose input value. Use with caution. - public get columnsInput() { - return this._columns; - } - - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); - } - public set indexes(value: string[]) { - this._indexes = value; - } - public resetIndexes() { - this._indexes = undefined; - } - // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; - } - - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); + // group - computed: false, optional: true, required: false + private _group?: string[]; + public get group() { + return this.getListAttribute('group'); } - public set liveSpan(value: string) { - this._liveSpan = value; + public set group(value: string[]) { + this._group = value; } - public resetLiveSpan() { - this._liveSpan = undefined; + public resetGroup() { + this._group = undefined; } // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; + public get groupInput() { + return this._group; } - // message_display - computed: false, optional: true, required: false - private _messageDisplay?: string; - public get messageDisplay() { - return this.getStringAttribute('message_display'); + // no_group_hosts - computed: false, optional: true, required: false + private _noGroupHosts?: boolean | cdktf.IResolvable; + public get noGroupHosts() { + return this.getBooleanAttribute('no_group_hosts'); } - public set messageDisplay(value: string) { - this._messageDisplay = value; + public set noGroupHosts(value: boolean | cdktf.IResolvable) { + this._noGroupHosts = value; } - public resetMessageDisplay() { - this._messageDisplay = undefined; + public resetNoGroupHosts() { + this._noGroupHosts = undefined; } // Temporarily expose input value. Use with caution. - public get messageDisplayInput() { - return this._messageDisplay; + public get noGroupHostsInput() { + return this._noGroupHosts; } - // query - computed: false, optional: true, required: false - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // no_metric_hosts - computed: false, optional: true, required: false + private _noMetricHosts?: boolean | cdktf.IResolvable; + public get noMetricHosts() { + return this.getBooleanAttribute('no_metric_hosts'); } - public set query(value: string) { - this._query = value; + public set noMetricHosts(value: boolean | cdktf.IResolvable) { + this._noMetricHosts = value; } - public resetQuery() { - this._query = undefined; + public resetNoMetricHosts() { + this._noMetricHosts = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get noMetricHostsInput() { + return this._noMetricHosts; } - // show_date_column - computed: false, optional: true, required: false - private _showDateColumn?: boolean | cdktf.IResolvable; - public get showDateColumn() { - return this.getBooleanAttribute('show_date_column'); + // node_type - computed: false, optional: true, required: false + private _nodeType?: string; + public get nodeType() { + return this.getStringAttribute('node_type'); } - public set showDateColumn(value: boolean | cdktf.IResolvable) { - this._showDateColumn = value; + public set nodeType(value: string) { + this._nodeType = value; } - public resetShowDateColumn() { - this._showDateColumn = undefined; + public resetNodeType() { + this._nodeType = undefined; } // Temporarily expose input value. Use with caution. - public get showDateColumnInput() { - return this._showDateColumn; + public get nodeTypeInput() { + return this._nodeType; } - // show_message_column - computed: false, optional: true, required: false - private _showMessageColumn?: boolean | cdktf.IResolvable; - public get showMessageColumn() { - return this.getBooleanAttribute('show_message_column'); + // scope - computed: false, optional: true, required: false + private _scope?: string[]; + public get scope() { + return this.getListAttribute('scope'); } - public set showMessageColumn(value: boolean | cdktf.IResolvable) { - this._showMessageColumn = value; + public set scope(value: string[]) { + this._scope = value; } - public resetShowMessageColumn() { - this._showMessageColumn = undefined; + public resetScope() { + this._scope = undefined; } // Temporarily expose input value. Use with caution. - public get showMessageColumnInput() { - return this._showMessageColumn; + public get scopeInput() { + return this._scope; } // title - computed: false, optional: true, required: false @@ -15674,112 +15266,187 @@ export class DashboardWidgetLogStreamDefinitionOutputReference extends cdktf.Com return this._titleSize; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetLogStreamDefinitionSortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetHostmapDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; } - public putSort(value: DashboardWidgetLogStreamDefinitionSort) { - this._sort.internalValue = value; + public putCustomLink(value: DashboardWidgetHostmapDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetCustomLink() { + this._customLink.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get customLinkInput() { + return this._customLink.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetHostmapDefinitionRequestOutputReference(this, "request"); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetHostmapDefinitionRequest) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; + } + + // style - computed: false, optional: true, required: false + private _style = new DashboardWidgetHostmapDefinitionStyleOutputReference(this, "style"); + public get style() { + return this._style; + } + public putStyle(value: DashboardWidgetHostmapDefinitionStyle) { + this._style.internalValue = value; + } + public resetStyle() { + this._style.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get styleInput() { + return this._style.internalValue; } } -export interface DashboardWidgetManageStatusDefinition { - /** - * Whether to colorize text or background. Valid values are `background`, `text`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#color_preference Dashboard#color_preference} - */ - readonly colorPreference?: string; +export interface DashboardWidgetIframeDefinition { /** - * The display setting to use. Valid values are `counts`, `countsAndList`, `list`. + * The URL to use as a data source for the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_format Dashboard#display_format} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#url Dashboard#url} */ - readonly displayFormat?: string; + readonly url: string; +} + +export function dashboardWidgetIframeDefinitionToTerraform(struct?: DashboardWidgetIframeDefinitionOutputReference | DashboardWidgetIframeDefinition): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + url: cdktf.stringToTerraform(struct!.url), + } +} + +export class DashboardWidgetIframeDefinitionOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + /** - * A Boolean indicating whether to hide empty categories. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_zero_counts Dashboard#hide_zero_counts} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing */ - readonly hideZeroCounts?: boolean | cdktf.IResolvable; + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetIframeDefinition | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._url !== undefined) { + hasAnyValues = true; + internalValueResult.url = this._url; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetIframeDefinition | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._url = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._url = value.url; + } + } + + // url - computed: false, optional: false, required: true + private _url?: string; + public get url() { + return this.getStringAttribute('url'); + } + public set url(value: string) { + this._url = value; + } + // Temporarily expose input value. Use with caution. + public get urlInput() { + return this._url; + } +} +export interface DashboardWidgetImageDefinition { /** - * The query to use in the widget. + * Whether to display a background or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_background Dashboard#has_background} */ - readonly query: string; + readonly hasBackground?: boolean | cdktf.IResolvable; /** - * A Boolean indicating whether to show when monitors/groups last triggered. + * Whether to display a border or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_last_triggered Dashboard#show_last_triggered} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_border Dashboard#has_border} */ - readonly showLastTriggered?: boolean | cdktf.IResolvable; + readonly hasBorder?: boolean | cdktf.IResolvable; /** - * Whether to show the priorities column. + * The horizontal alignment for the widget. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_priority Dashboard#show_priority} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#horizontal_align Dashboard#horizontal_align} */ - readonly showPriority?: boolean | cdktf.IResolvable; + readonly horizontalAlign?: string; /** - * The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. + * The margins to use around the image. Note: `small` and `large` values are deprecated. Valid values are `sm`, `md`, `lg`, `small`, `large`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#margin Dashboard#margin} */ - readonly sort?: string; + readonly margin?: string; /** - * The summary type to use. Valid values are `monitors`, `groups`, `combined`. + * The preferred method to adapt the dimensions of the image. The values are based on the image `object-fit` CSS properties. Note: `zoom`, `fit` and `center` values are deprecated. Valid values are `fill`, `contain`, `cover`, `none`, `scale-down`, `zoom`, `fit`, `center`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#summary_type Dashboard#summary_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sizing Dashboard#sizing} */ - readonly summaryType?: string; + readonly sizing?: string; /** - * The title of the widget. + * The URL to use as a data source for the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#url Dashboard#url} */ - readonly title?: string; + readonly url: string; /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * The URL in dark mode to use as a data source for the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#url_dark_theme Dashboard#url_dark_theme} */ - readonly titleAlign?: string; + readonly urlDarkTheme?: string; /** - * The size of the widget's title (defaults to 16). + * The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#vertical_align Dashboard#vertical_align} */ - readonly titleSize?: string; + readonly verticalAlign?: string; } -export function dashboardWidgetManageStatusDefinitionToTerraform(struct?: DashboardWidgetManageStatusDefinitionOutputReference | DashboardWidgetManageStatusDefinition): any { +export function dashboardWidgetImageDefinitionToTerraform(struct?: DashboardWidgetImageDefinitionOutputReference | DashboardWidgetImageDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - color_preference: cdktf.stringToTerraform(struct!.colorPreference), - display_format: cdktf.stringToTerraform(struct!.displayFormat), - hide_zero_counts: cdktf.booleanToTerraform(struct!.hideZeroCounts), - query: cdktf.stringToTerraform(struct!.query), - show_last_triggered: cdktf.booleanToTerraform(struct!.showLastTriggered), - show_priority: cdktf.booleanToTerraform(struct!.showPriority), - sort: cdktf.stringToTerraform(struct!.sort), - summary_type: cdktf.stringToTerraform(struct!.summaryType), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), + has_background: cdktf.booleanToTerraform(struct!.hasBackground), + has_border: cdktf.booleanToTerraform(struct!.hasBorder), + horizontal_align: cdktf.stringToTerraform(struct!.horizontalAlign), + margin: cdktf.stringToTerraform(struct!.margin), + sizing: cdktf.stringToTerraform(struct!.sizing), + url: cdktf.stringToTerraform(struct!.url), + url_dark_theme: cdktf.stringToTerraform(struct!.urlDarkTheme), + vertical_align: cdktf.stringToTerraform(struct!.verticalAlign), } } -export class DashboardWidgetManageStatusDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetImageDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15790,336 +15457,357 @@ export class DashboardWidgetManageStatusDefinitionOutputReference extends cdktf. super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetManageStatusDefinition | undefined { + public get internalValue(): DashboardWidgetImageDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._colorPreference !== undefined) { - hasAnyValues = true; - internalValueResult.colorPreference = this._colorPreference; - } - if (this._displayFormat !== undefined) { - hasAnyValues = true; - internalValueResult.displayFormat = this._displayFormat; - } - if (this._hideZeroCounts !== undefined) { - hasAnyValues = true; - internalValueResult.hideZeroCounts = this._hideZeroCounts; - } - if (this._query !== undefined) { + if (this._hasBackground !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.hasBackground = this._hasBackground; } - if (this._showLastTriggered !== undefined) { + if (this._hasBorder !== undefined) { hasAnyValues = true; - internalValueResult.showLastTriggered = this._showLastTriggered; + internalValueResult.hasBorder = this._hasBorder; } - if (this._showPriority !== undefined) { + if (this._horizontalAlign !== undefined) { hasAnyValues = true; - internalValueResult.showPriority = this._showPriority; + internalValueResult.horizontalAlign = this._horizontalAlign; } - if (this._sort !== undefined) { + if (this._margin !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort; + internalValueResult.margin = this._margin; } - if (this._summaryType !== undefined) { + if (this._sizing !== undefined) { hasAnyValues = true; - internalValueResult.summaryType = this._summaryType; + internalValueResult.sizing = this._sizing; } - if (this._title !== undefined) { + if (this._url !== undefined) { hasAnyValues = true; - internalValueResult.title = this._title; + internalValueResult.url = this._url; } - if (this._titleAlign !== undefined) { + if (this._urlDarkTheme !== undefined) { hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; + internalValueResult.urlDarkTheme = this._urlDarkTheme; } - if (this._titleSize !== undefined) { + if (this._verticalAlign !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.verticalAlign = this._verticalAlign; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetManageStatusDefinition | undefined) { + public set internalValue(value: DashboardWidgetImageDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._colorPreference = undefined; - this._displayFormat = undefined; - this._hideZeroCounts = undefined; - this._query = undefined; - this._showLastTriggered = undefined; - this._showPriority = undefined; - this._sort = undefined; - this._summaryType = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; + this._hasBackground = undefined; + this._hasBorder = undefined; + this._horizontalAlign = undefined; + this._margin = undefined; + this._sizing = undefined; + this._url = undefined; + this._urlDarkTheme = undefined; + this._verticalAlign = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._colorPreference = value.colorPreference; - this._displayFormat = value.displayFormat; - this._hideZeroCounts = value.hideZeroCounts; - this._query = value.query; - this._showLastTriggered = value.showLastTriggered; - this._showPriority = value.showPriority; - this._sort = value.sort; - this._summaryType = value.summaryType; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; + this._hasBackground = value.hasBackground; + this._hasBorder = value.hasBorder; + this._horizontalAlign = value.horizontalAlign; + this._margin = value.margin; + this._sizing = value.sizing; + this._url = value.url; + this._urlDarkTheme = value.urlDarkTheme; + this._verticalAlign = value.verticalAlign; } } - // color_preference - computed: false, optional: true, required: false - private _colorPreference?: string; - public get colorPreference() { - return this.getStringAttribute('color_preference'); - } - public set colorPreference(value: string) { - this._colorPreference = value; - } - public resetColorPreference() { - this._colorPreference = undefined; - } - // Temporarily expose input value. Use with caution. - public get colorPreferenceInput() { - return this._colorPreference; - } - - // display_format - computed: false, optional: true, required: false - private _displayFormat?: string; - public get displayFormat() { - return this.getStringAttribute('display_format'); - } - public set displayFormat(value: string) { - this._displayFormat = value; - } - public resetDisplayFormat() { - this._displayFormat = undefined; - } - // Temporarily expose input value. Use with caution. - public get displayFormatInput() { - return this._displayFormat; - } - - // hide_zero_counts - computed: false, optional: true, required: false - private _hideZeroCounts?: boolean | cdktf.IResolvable; - public get hideZeroCounts() { - return this.getBooleanAttribute('hide_zero_counts'); - } - public set hideZeroCounts(value: boolean | cdktf.IResolvable) { - this._hideZeroCounts = value; - } - public resetHideZeroCounts() { - this._hideZeroCounts = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideZeroCountsInput() { - return this._hideZeroCounts; + // has_background - computed: false, optional: true, required: false + private _hasBackground?: boolean | cdktf.IResolvable; + public get hasBackground() { + return this.getBooleanAttribute('has_background'); } - - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + public set hasBackground(value: boolean | cdktf.IResolvable) { + this._hasBackground = value; } - public set query(value: string) { - this._query = value; + public resetHasBackground() { + this._hasBackground = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get hasBackgroundInput() { + return this._hasBackground; } - // show_last_triggered - computed: false, optional: true, required: false - private _showLastTriggered?: boolean | cdktf.IResolvable; - public get showLastTriggered() { - return this.getBooleanAttribute('show_last_triggered'); + // has_border - computed: false, optional: true, required: false + private _hasBorder?: boolean | cdktf.IResolvable; + public get hasBorder() { + return this.getBooleanAttribute('has_border'); } - public set showLastTriggered(value: boolean | cdktf.IResolvable) { - this._showLastTriggered = value; + public set hasBorder(value: boolean | cdktf.IResolvable) { + this._hasBorder = value; } - public resetShowLastTriggered() { - this._showLastTriggered = undefined; + public resetHasBorder() { + this._hasBorder = undefined; } // Temporarily expose input value. Use with caution. - public get showLastTriggeredInput() { - return this._showLastTriggered; + public get hasBorderInput() { + return this._hasBorder; } - // show_priority - computed: false, optional: true, required: false - private _showPriority?: boolean | cdktf.IResolvable; - public get showPriority() { - return this.getBooleanAttribute('show_priority'); + // horizontal_align - computed: false, optional: true, required: false + private _horizontalAlign?: string; + public get horizontalAlign() { + return this.getStringAttribute('horizontal_align'); } - public set showPriority(value: boolean | cdktf.IResolvable) { - this._showPriority = value; + public set horizontalAlign(value: string) { + this._horizontalAlign = value; } - public resetShowPriority() { - this._showPriority = undefined; + public resetHorizontalAlign() { + this._horizontalAlign = undefined; } // Temporarily expose input value. Use with caution. - public get showPriorityInput() { - return this._showPriority; + public get horizontalAlignInput() { + return this._horizontalAlign; } - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); + // margin - computed: false, optional: true, required: false + private _margin?: string; + public get margin() { + return this.getStringAttribute('margin'); } - public set sort(value: string) { - this._sort = value; + public set margin(value: string) { + this._margin = value; } - public resetSort() { - this._sort = undefined; + public resetMargin() { + this._margin = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; + public get marginInput() { + return this._margin; } - // summary_type - computed: false, optional: true, required: false - private _summaryType?: string; - public get summaryType() { - return this.getStringAttribute('summary_type'); + // sizing - computed: false, optional: true, required: false + private _sizing?: string; + public get sizing() { + return this.getStringAttribute('sizing'); } - public set summaryType(value: string) { - this._summaryType = value; + public set sizing(value: string) { + this._sizing = value; } - public resetSummaryType() { - this._summaryType = undefined; + public resetSizing() { + this._sizing = undefined; } // Temporarily expose input value. Use with caution. - public get summaryTypeInput() { - return this._summaryType; + public get sizingInput() { + return this._sizing; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; + // url - computed: false, optional: false, required: true + private _url?: string; + public get url() { + return this.getStringAttribute('url'); } - public resetTitle() { - this._title = undefined; + public set url(value: string) { + this._url = value; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get urlInput() { + return this._url; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // url_dark_theme - computed: false, optional: true, required: false + private _urlDarkTheme?: string; + public get urlDarkTheme() { + return this.getStringAttribute('url_dark_theme'); } - public set titleAlign(value: string) { - this._titleAlign = value; + public set urlDarkTheme(value: string) { + this._urlDarkTheme = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetUrlDarkTheme() { + this._urlDarkTheme = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get urlDarkThemeInput() { + return this._urlDarkTheme; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); + // vertical_align - computed: false, optional: true, required: false + private _verticalAlign?: string; + public get verticalAlign() { + return this.getStringAttribute('vertical_align'); } - public set titleSize(value: string) { - this._titleSize = value; + public set verticalAlign(value: string) { + this._verticalAlign = value; } - public resetTitleSize() { - this._titleSize = undefined; + public resetVerticalAlign() { + this._verticalAlign = undefined; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get verticalAlignInput() { + return this._verticalAlign; } } -export interface DashboardWidgetNoteDefinition { +export interface DashboardWidgetListStreamDefinitionRequestColumns { /** - * The background color of the note. + * Widget column field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#background_color Dashboard#background_color} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#field Dashboard#field} */ - readonly backgroundColor?: string; + readonly field: string; /** - * The content of the note. + * Widget column width. Valid values are `auto`, `compact`, `full`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#content Dashboard#content} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#width Dashboard#width} */ - readonly content: string; + readonly width: string; +} + +export function dashboardWidgetListStreamDefinitionRequestColumnsToTerraform(struct?: DashboardWidgetListStreamDefinitionRequestColumns | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + field: cdktf.stringToTerraform(struct!.field), + width: cdktf.stringToTerraform(struct!.width), + } +} + +export class DashboardWidgetListStreamDefinitionRequestColumnsOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + /** - * The size of the text. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#font_size Dashboard#font_size} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly fontSize?: string; + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetListStreamDefinitionRequestColumns | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._field !== undefined) { + hasAnyValues = true; + internalValueResult.field = this._field; + } + if (this._width !== undefined) { + hasAnyValues = true; + internalValueResult.width = this._width; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetListStreamDefinitionRequestColumns | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._field = undefined; + this._width = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._field = value.field; + this._width = value.width; + } + } + + // field - computed: false, optional: false, required: true + private _field?: string; + public get field() { + return this.getStringAttribute('field'); + } + public set field(value: string) { + this._field = value; + } + // Temporarily expose input value. Use with caution. + public get fieldInput() { + return this._field; + } + + // width - computed: false, optional: false, required: true + private _width?: string; + public get width() { + return this.getStringAttribute('width'); + } + public set width(value: string) { + this._width = value; + } + // Temporarily expose input value. Use with caution. + public get widthInput() { + return this._width; + } +} + +export class DashboardWidgetListStreamDefinitionRequestColumnsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetListStreamDefinitionRequestColumns[] | cdktf.IResolvable + /** - * Whether to add padding or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_padding Dashboard#has_padding} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly hasPadding?: boolean | cdktf.IResolvable; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Whether to show a tick or not. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_tick Dashboard#show_tick} + * @param index the index of the item to return */ - readonly showTick?: boolean | cdktf.IResolvable; + public get(index: number): DashboardWidgetListStreamDefinitionRequestColumnsOutputReference { + return new DashboardWidgetListStreamDefinitionRequestColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetListStreamDefinitionRequestQuery { /** - * The alignment of the widget's text. Valid values are `center`, `left`, `right`. + * Source from which to query items to display in the stream. Valid values are `logs_stream`, `audit_stream`, `rum_issue_stream`, `apm_issue_stream`, `logs_pattern_stream`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_align Dashboard#text_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly textAlign?: string; + readonly dataSource: string; /** - * When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. + * List of indexes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tick_edge Dashboard#tick_edge} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - readonly tickEdge?: string; + readonly indexes?: string[]; /** - * When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. + * Widget query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tick_pos Dashboard#tick_pos} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_string Dashboard#query_string} */ - readonly tickPos?: string; + readonly queryString?: string; /** - * The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + * Storage location (private beta). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#vertical_align Dashboard#vertical_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} */ - readonly verticalAlign?: string; + readonly storage?: string; } -export function dashboardWidgetNoteDefinitionToTerraform(struct?: DashboardWidgetNoteDefinitionOutputReference | DashboardWidgetNoteDefinition): any { +export function dashboardWidgetListStreamDefinitionRequestQueryToTerraform(struct?: DashboardWidgetListStreamDefinitionRequestQueryOutputReference | DashboardWidgetListStreamDefinitionRequestQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - background_color: cdktf.stringToTerraform(struct!.backgroundColor), - content: cdktf.stringToTerraform(struct!.content), - font_size: cdktf.stringToTerraform(struct!.fontSize), - has_padding: cdktf.booleanToTerraform(struct!.hasPadding), - show_tick: cdktf.booleanToTerraform(struct!.showTick), - text_align: cdktf.stringToTerraform(struct!.textAlign), - tick_edge: cdktf.stringToTerraform(struct!.tickEdge), - tick_pos: cdktf.stringToTerraform(struct!.tickPos), - vertical_align: cdktf.stringToTerraform(struct!.verticalAlign), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + query_string: cdktf.stringToTerraform(struct!.queryString), + storage: cdktf.stringToTerraform(struct!.storage), } } -export class DashboardWidgetNoteDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetListStreamDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16130,436 +15818,585 @@ export class DashboardWidgetNoteDefinitionOutputReference extends cdktf.ComplexO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetNoteDefinition | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._backgroundColor !== undefined) { - hasAnyValues = true; - internalValueResult.backgroundColor = this._backgroundColor; - } - if (this._content !== undefined) { - hasAnyValues = true; - internalValueResult.content = this._content; - } - if (this._fontSize !== undefined) { - hasAnyValues = true; - internalValueResult.fontSize = this._fontSize; - } - if (this._hasPadding !== undefined) { - hasAnyValues = true; - internalValueResult.hasPadding = this._hasPadding; - } - if (this._showTick !== undefined) { - hasAnyValues = true; - internalValueResult.showTick = this._showTick; - } - if (this._textAlign !== undefined) { + public get internalValue(): DashboardWidgetListStreamDefinitionRequestQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.textAlign = this._textAlign; + internalValueResult.dataSource = this._dataSource; } - if (this._tickEdge !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.tickEdge = this._tickEdge; + internalValueResult.indexes = this._indexes; } - if (this._tickPos !== undefined) { + if (this._queryString !== undefined) { hasAnyValues = true; - internalValueResult.tickPos = this._tickPos; + internalValueResult.queryString = this._queryString; } - if (this._verticalAlign !== undefined) { + if (this._storage !== undefined) { hasAnyValues = true; - internalValueResult.verticalAlign = this._verticalAlign; + internalValueResult.storage = this._storage; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetNoteDefinition | undefined) { + public set internalValue(value: DashboardWidgetListStreamDefinitionRequestQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._backgroundColor = undefined; - this._content = undefined; - this._fontSize = undefined; - this._hasPadding = undefined; - this._showTick = undefined; - this._textAlign = undefined; - this._tickEdge = undefined; - this._tickPos = undefined; - this._verticalAlign = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._queryString = undefined; + this._storage = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._backgroundColor = value.backgroundColor; - this._content = value.content; - this._fontSize = value.fontSize; - this._hasPadding = value.hasPadding; - this._showTick = value.showTick; - this._textAlign = value.textAlign; - this._tickEdge = value.tickEdge; - this._tickPos = value.tickPos; - this._verticalAlign = value.verticalAlign; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._queryString = value.queryString; + this._storage = value.storage; } } - // background_color - computed: false, optional: true, required: false - private _backgroundColor?: string; - public get backgroundColor() { - return this.getStringAttribute('background_color'); - } - public set backgroundColor(value: string) { - this._backgroundColor = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetBackgroundColor() { - this._backgroundColor = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get backgroundColorInput() { - return this._backgroundColor; + public get dataSourceInput() { + return this._dataSource; } - // content - computed: false, optional: false, required: true - private _content?: string; - public get content() { - return this.getStringAttribute('content'); + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public set content(value: string) { - this._content = value; + public set indexes(value: string[]) { + this._indexes = value; + } + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get contentInput() { - return this._content; + public get indexesInput() { + return this._indexes; } - // font_size - computed: false, optional: true, required: false - private _fontSize?: string; - public get fontSize() { - return this.getStringAttribute('font_size'); + // query_string - computed: false, optional: true, required: false + private _queryString?: string; + public get queryString() { + return this.getStringAttribute('query_string'); } - public set fontSize(value: string) { - this._fontSize = value; + public set queryString(value: string) { + this._queryString = value; } - public resetFontSize() { - this._fontSize = undefined; + public resetQueryString() { + this._queryString = undefined; } // Temporarily expose input value. Use with caution. - public get fontSizeInput() { - return this._fontSize; + public get queryStringInput() { + return this._queryString; } - // has_padding - computed: false, optional: true, required: false - private _hasPadding?: boolean | cdktf.IResolvable; - public get hasPadding() { - return this.getBooleanAttribute('has_padding'); + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); } - public set hasPadding(value: boolean | cdktf.IResolvable) { - this._hasPadding = value; + public set storage(value: string) { + this._storage = value; } - public resetHasPadding() { - this._hasPadding = undefined; + public resetStorage() { + this._storage = undefined; } // Temporarily expose input value. Use with caution. - public get hasPaddingInput() { - return this._hasPadding; + public get storageInput() { + return this._storage; } +} +export interface DashboardWidgetListStreamDefinitionRequest { + /** + * Widget response format. Valid values are `event_list`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#response_format Dashboard#response_format} + */ + readonly responseFormat: string; + /** + * columns block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#columns Dashboard#columns} + */ + readonly columns: DashboardWidgetListStreamDefinitionRequestColumns[] | cdktf.IResolvable; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: DashboardWidgetListStreamDefinitionRequestQuery; +} - // show_tick - computed: false, optional: true, required: false - private _showTick?: boolean | cdktf.IResolvable; - public get showTick() { - return this.getBooleanAttribute('show_tick'); +export function dashboardWidgetListStreamDefinitionRequestToTerraform(struct?: DashboardWidgetListStreamDefinitionRequest | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public set showTick(value: boolean | cdktf.IResolvable) { - this._showTick = value; + return { + response_format: cdktf.stringToTerraform(struct!.responseFormat), + columns: cdktf.listMapper(dashboardWidgetListStreamDefinitionRequestColumnsToTerraform, true)(struct!.columns), + query: dashboardWidgetListStreamDefinitionRequestQueryToTerraform(struct!.query), } - public resetShowTick() { - this._showTick = undefined; +} + +export class DashboardWidgetListStreamDefinitionRequestOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - // Temporarily expose input value. Use with caution. - public get showTickInput() { - return this._showTick; + + public get internalValue(): DashboardWidgetListStreamDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._responseFormat !== undefined) { + hasAnyValues = true; + internalValueResult.responseFormat = this._responseFormat; + } + if (this._columns?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.columns = this._columns?.internalValue; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // text_align - computed: false, optional: true, required: false - private _textAlign?: string; - public get textAlign() { - return this.getStringAttribute('text_align'); + public set internalValue(value: DashboardWidgetListStreamDefinitionRequest | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._responseFormat = undefined; + this._columns.internalValue = undefined; + this._query.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._responseFormat = value.responseFormat; + this._columns.internalValue = value.columns; + this._query.internalValue = value.query; + } } - public set textAlign(value: string) { - this._textAlign = value; + + // response_format - computed: false, optional: false, required: true + private _responseFormat?: string; + public get responseFormat() { + return this.getStringAttribute('response_format'); } - public resetTextAlign() { - this._textAlign = undefined; + public set responseFormat(value: string) { + this._responseFormat = value; } // Temporarily expose input value. Use with caution. - public get textAlignInput() { - return this._textAlign; + public get responseFormatInput() { + return this._responseFormat; } - // tick_edge - computed: false, optional: true, required: false - private _tickEdge?: string; - public get tickEdge() { - return this.getStringAttribute('tick_edge'); - } - public set tickEdge(value: string) { - this._tickEdge = value; + // columns - computed: false, optional: false, required: true + private _columns = new DashboardWidgetListStreamDefinitionRequestColumnsList(this, "columns", false); + public get columns() { + return this._columns; } - public resetTickEdge() { - this._tickEdge = undefined; + public putColumns(value: DashboardWidgetListStreamDefinitionRequestColumns[] | cdktf.IResolvable) { + this._columns.internalValue = value; } // Temporarily expose input value. Use with caution. - public get tickEdgeInput() { - return this._tickEdge; + public get columnsInput() { + return this._columns.internalValue; } - // tick_pos - computed: false, optional: true, required: false - private _tickPos?: string; - public get tickPos() { - return this.getStringAttribute('tick_pos'); - } - public set tickPos(value: string) { - this._tickPos = value; + // query - computed: false, optional: false, required: true + private _query = new DashboardWidgetListStreamDefinitionRequestQueryOutputReference(this, "query"); + public get query() { + return this._query; } - public resetTickPos() { - this._tickPos = undefined; + public putQuery(value: DashboardWidgetListStreamDefinitionRequestQuery) { + this._query.internalValue = value; } // Temporarily expose input value. Use with caution. - public get tickPosInput() { - return this._tickPos; + public get queryInput() { + return this._query.internalValue; } +} - // vertical_align - computed: false, optional: true, required: false - private _verticalAlign?: string; - public get verticalAlign() { - return this.getStringAttribute('vertical_align'); - } - public set verticalAlign(value: string) { - this._verticalAlign = value; - } - public resetVerticalAlign() { - this._verticalAlign = undefined; +export class DashboardWidgetListStreamDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetListStreamDefinitionRequest[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get verticalAlignInput() { - return this._verticalAlign; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetListStreamDefinitionRequestOutputReference { + return new DashboardWidgetListStreamDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionCustomLink { +export interface DashboardWidgetListStreamDefinition { /** - * The flag for toggling context menu link visibility. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly title?: string; /** - * The label for the custom link URL. + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly label?: string; + readonly titleAlign?: string; /** - * The URL of the custom link. + * The size of the widget's title. Default is 16. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly link?: string; + readonly titleSize?: string; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly overrideLabel?: string; + readonly request: DashboardWidgetListStreamDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetQueryTableDefinitionCustomLinkToTerraform(struct?: DashboardWidgetQueryTableDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetListStreamDefinitionToTerraform(struct?: DashboardWidgetListStreamDefinitionOutputReference | DashboardWidgetListStreamDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + request: cdktf.listMapper(dashboardWidgetListStreamDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetQueryTableDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetListStreamDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetListStreamDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.title = this._title; } - if (this._label !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.titleAlign = this._titleAlign; } - if (this._link !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.titleSize = this._titleSize; } - if (this._overrideLabel !== undefined) { + if (this._request?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetListStreamDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._request.internalValue = value.request; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + public set title(value: string) { + this._title = value; } - public resetIsHidden() { - this._isHidden = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get titleInput() { + return this._title; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public set label(value: string) { - this._label = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetLabel() { - this._label = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get titleAlignInput() { + return this._titleAlign; + } + + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; + } + + // request - computed: false, optional: false, required: true + private _request = new DashboardWidgetListStreamDefinitionRequestList(this, "request", false); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetListStreamDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; + } +} +export interface DashboardWidgetLogStreamDefinitionSort { + /** + * The facet path for the column + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#column Dashboard#column} + */ + readonly column: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} + +export function dashboardWidgetLogStreamDefinitionSortToTerraform(struct?: DashboardWidgetLogStreamDefinitionSortOutputReference | DashboardWidgetLogStreamDefinitionSort): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + column: cdktf.stringToTerraform(struct!.column), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetLogStreamDefinitionSortOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetLogStreamDefinitionSort | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._column !== undefined) { + hasAnyValues = true; + internalValueResult.column = this._column; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetLogStreamDefinitionSort | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._column = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._column = value.column; + this._order = value.order; + } } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); - } - public set link(value: string) { - this._link = value; + // column - computed: false, optional: false, required: true + private _column?: string; + public get column() { + return this.getStringAttribute('column'); } - public resetLink() { - this._link = undefined; + public set column(value: string) { + this._column = value; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get columnInput() { + return this._column; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); - } - public set overrideLabel(value: string) { - this._overrideLabel = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get orderInput() { + return this._order; } } - -export class DashboardWidgetQueryTableDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionCustomLink[] | cdktf.IResolvable - +export interface DashboardWidgetLogStreamDefinition { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * Stringified list of columns to use, for example: `["column1","column2","column3"]`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#columns Dashboard#columns} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly columns?: string[]; /** - * @param index the index of the item to return + * An array of index names to query in the stream. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - public get(index: number): DashboardWidgetQueryTableDefinitionCustomLinkOutputReference { - return new DashboardWidgetQueryTableDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery { + readonly indexes?: string[]; /** - * The aggregation method. + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - readonly aggregation: string; + readonly liveSpan?: string; /** - * The facet name. + * The number of log lines to display. Valid values are `inline`, `expanded-md`, `expanded-lg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#message_display Dashboard#message_display} */ - readonly facet?: string; + readonly messageDisplay?: string; /** - * Define the time interval in seconds. + * The query to use in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query?: string; + /** + * If the date column should be displayed. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_date_column Dashboard#show_date_column} + */ + readonly showDateColumn?: boolean | cdktf.IResolvable; + /** + * If the message column should be displayed. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_message_column Dashboard#show_message_column} + */ + readonly showMessageColumn?: boolean | cdktf.IResolvable; + /** + * The title of the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + */ + readonly title?: string; + /** + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; + /** + * sort block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: DashboardWidgetLogStreamDefinitionSort; } -export function dashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetLogStreamDefinitionToTerraform(struct?: DashboardWidgetLogStreamDefinitionOutputReference | DashboardWidgetLogStreamDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.columns), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + message_display: cdktf.stringToTerraform(struct!.messageDisplay), + query: cdktf.stringToTerraform(struct!.query), + show_date_column: cdktf.booleanToTerraform(struct!.showDateColumn), + show_message_column: cdktf.booleanToTerraform(struct!.showMessageColumn), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + sort: dashboardWidgetLogStreamDefinitionSortToTerraform(struct!.sort), } } -export class DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetLogStreamDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16570,562 +16407,693 @@ export class DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutpu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetLogStreamDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._columns !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.columns = this._columns; } - if (this._facet !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.indexes = this._indexes; } - if (this._interval !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.liveSpan = this._liveSpan; + } + if (this._messageDisplay !== undefined) { + hasAnyValues = true; + internalValueResult.messageDisplay = this._messageDisplay; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; + } + if (this._showDateColumn !== undefined) { + hasAnyValues = true; + internalValueResult.showDateColumn = this._showDateColumn; + } + if (this._showMessageColumn !== undefined) { + hasAnyValues = true; + internalValueResult.showMessageColumn = this._showMessageColumn; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._sort?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetLogStreamDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._columns = undefined; + this._indexes = undefined; + this._liveSpan = undefined; + this._messageDisplay = undefined; + this._query = undefined; + this._showDateColumn = undefined; + this._showMessageColumn = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._sort.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._columns = value.columns; + this._indexes = value.indexes; + this._liveSpan = value.liveSpan; + this._messageDisplay = value.messageDisplay; + this._query = value.query; + this._showDateColumn = value.showDateColumn; + this._showMessageColumn = value.showMessageColumn; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._sort.internalValue = value.sort; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // columns - computed: false, optional: true, required: false + private _columns?: string[]; + public get columns() { + return this.getListAttribute('columns'); + } + public set columns(value: string[]) { + this._columns = value; + } + public resetColumns() { + this._columns = undefined; + } + // Temporarily expose input value. Use with caution. + public get columnsInput() { + return this._columns; + } + + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); + } + public set indexes(value: string[]) { + this._indexes = value; + } + public resetIndexes() { + this._indexes = undefined; + } + // Temporarily expose input value. Use with caution. + public get indexesInput() { + return this._indexes; + } + + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); + } + public set liveSpan(value: string) { + this._liveSpan = value; + } + public resetLiveSpan() { + this._liveSpan = undefined; + } + // Temporarily expose input value. Use with caution. + public get liveSpanInput() { + return this._liveSpan; + } + + // message_display - computed: false, optional: true, required: false + private _messageDisplay?: string; + public get messageDisplay() { + return this.getStringAttribute('message_display'); } - public set aggregation(value: string) { - this._aggregation = value; + public set messageDisplay(value: string) { + this._messageDisplay = value; + } + public resetMessageDisplay() { + this._messageDisplay = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get messageDisplayInput() { + return this._messageDisplay; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // query - computed: false, optional: true, required: false + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public set facet(value: string) { - this._facet = value; + public set query(value: string) { + this._query = value; } - public resetFacet() { - this._facet = undefined; + public resetQuery() { + this._query = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get queryInput() { + return this._query; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // show_date_column - computed: false, optional: true, required: false + private _showDateColumn?: boolean | cdktf.IResolvable; + public get showDateColumn() { + return this.getBooleanAttribute('show_date_column'); } - public set interval(value: number) { - this._interval = value; + public set showDateColumn(value: boolean | cdktf.IResolvable) { + this._showDateColumn = value; } - public resetInterval() { - this._interval = undefined; + public resetShowDateColumn() { + this._showDateColumn = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get showDateColumnInput() { + return this._showDateColumn; } -} -export interface DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} -export function dashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // show_message_column - computed: false, optional: true, required: false + private _showMessageColumn?: boolean | cdktf.IResolvable; + public get showMessageColumn() { + return this.getBooleanAttribute('show_message_column'); } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + public set showMessageColumn(value: boolean | cdktf.IResolvable) { + this._showMessageColumn = value; } -} - -export class DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public resetShowMessageColumn() { + this._showMessageColumn = undefined; } - - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get showMessageColumnInput() { + return this._showMessageColumn; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); + } + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public set aggregation(value: string) { - this._aggregation = value; + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get titleAlignInput() { + return this._titleAlign; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public set facet(value: string) { - this._facet = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetFacet() { - this._facet = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get titleSizeInput() { + return this._titleSize; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetLogStreamDefinitionSortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public set order(value: string) { - this._order = value; + public putSort(value: DashboardWidgetLogStreamDefinitionSort) { + this._sort.internalValue = value; + } + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get sortInput() { + return this._sort.internalValue; } } -export interface DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy { +export interface DashboardWidgetManageStatusDefinition { + /** + * Whether to colorize text or background. Valid values are `background`, `text`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#color_preference Dashboard#color_preference} + */ + readonly colorPreference?: string; + /** + * The display setting to use. Valid values are `counts`, `countsAndList`, `list`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_format Dashboard#display_format} + */ + readonly displayFormat?: string; + /** + * A Boolean indicating whether to hide empty categories. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_zero_counts Dashboard#hide_zero_counts} + */ + readonly hideZeroCounts?: boolean | cdktf.IResolvable; + /** + * The query to use in the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; + /** + * A Boolean indicating whether to show when monitors/groups last triggered. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_last_triggered Dashboard#show_last_triggered} + */ + readonly showLastTriggered?: boolean | cdktf.IResolvable; + /** + * Whether to show the priorities column. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_priority Dashboard#show_priority} + */ + readonly showPriority?: boolean | cdktf.IResolvable; + /** + * The method to sort the monitors. Valid values are `name`, `group`, `status`, `tags`, `triggered`, `group,asc`, `group,desc`, `name,asc`, `name,desc`, `status,asc`, `status,desc`, `tags,asc`, `tags,desc`, `triggered,asc`, `triggered,desc`, `priority,asc`, `priority,desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: string; /** - * The facet name. + * The summary type to use. Valid values are `monitors`, `groups`, `combined`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#summary_type Dashboard#summary_type} */ - readonly facet?: string; + readonly summaryType?: string; /** - * The maximum number of items in the group. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly limit?: number; + readonly title?: string; /** - * sort_query block + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery; + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; } -export function dashboardWidgetQueryTableDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetManageStatusDefinitionToTerraform(struct?: DashboardWidgetManageStatusDefinitionOutputReference | DashboardWidgetManageStatusDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + color_preference: cdktf.stringToTerraform(struct!.colorPreference), + display_format: cdktf.stringToTerraform(struct!.displayFormat), + hide_zero_counts: cdktf.booleanToTerraform(struct!.hideZeroCounts), + query: cdktf.stringToTerraform(struct!.query), + show_last_triggered: cdktf.booleanToTerraform(struct!.showLastTriggered), + show_priority: cdktf.booleanToTerraform(struct!.showPriority), + sort: cdktf.stringToTerraform(struct!.sort), + summary_type: cdktf.stringToTerraform(struct!.summaryType), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), } } -export class DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetManageStatusDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetManageStatusDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._colorPreference !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.colorPreference = this._colorPreference; } - if (this._limit !== undefined) { + if (this._displayFormat !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.displayFormat = this._displayFormat; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._hideZeroCounts !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.hideZeroCounts = this._hideZeroCounts; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; + } + if (this._showLastTriggered !== undefined) { + hasAnyValues = true; + internalValueResult.showLastTriggered = this._showLastTriggered; + } + if (this._showPriority !== undefined) { + hasAnyValues = true; + internalValueResult.showPriority = this._showPriority; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._summaryType !== undefined) { + hasAnyValues = true; + internalValueResult.summaryType = this._summaryType; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetManageStatusDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._colorPreference = undefined; + this._displayFormat = undefined; + this._hideZeroCounts = undefined; + this._query = undefined; + this._showLastTriggered = undefined; + this._showPriority = undefined; + this._sort = undefined; + this._summaryType = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._colorPreference = value.colorPreference; + this._displayFormat = value.displayFormat; + this._hideZeroCounts = value.hideZeroCounts; + this._query = value.query; + this._showLastTriggered = value.showLastTriggered; + this._showPriority = value.showPriority; + this._sort = value.sort; + this._summaryType = value.summaryType; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // color_preference - computed: false, optional: true, required: false + private _colorPreference?: string; + public get colorPreference() { + return this.getStringAttribute('color_preference'); } - public set facet(value: string) { - this._facet = value; + public set colorPreference(value: string) { + this._colorPreference = value; } - public resetFacet() { - this._facet = undefined; + public resetColorPreference() { + this._colorPreference = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get colorPreferenceInput() { + return this._colorPreference; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // display_format - computed: false, optional: true, required: false + private _displayFormat?: string; + public get displayFormat() { + return this.getStringAttribute('display_format'); } - public set limit(value: number) { - this._limit = value; + public set displayFormat(value: string) { + this._displayFormat = value; } - public resetLimit() { - this._limit = undefined; + public resetDisplayFormat() { + this._displayFormat = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get displayFormatInput() { + return this._displayFormat; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // hide_zero_counts - computed: false, optional: true, required: false + private _hideZeroCounts?: boolean | cdktf.IResolvable; + public get hideZeroCounts() { + return this.getBooleanAttribute('hide_zero_counts'); } - public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set hideZeroCounts(value: boolean | cdktf.IResolvable) { + this._hideZeroCounts = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetHideZeroCounts() { + this._hideZeroCounts = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get hideZeroCountsInput() { + return this._hideZeroCounts; } -} -export class DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set query(value: string) { + this._query = value; + } + // Temporarily expose input value. Use with caution. + public get queryInput() { + return this._query; } -} -export interface DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Define the time interval in seconds. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} - */ - readonly interval?: number; -} -export function dashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // show_last_triggered - computed: false, optional: true, required: false + private _showLastTriggered?: boolean | cdktf.IResolvable; + public get showLastTriggered() { + return this.getBooleanAttribute('show_last_triggered'); + } + public set showLastTriggered(value: boolean | cdktf.IResolvable) { + this._showLastTriggered = value; } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + public resetShowLastTriggered() { + this._showLastTriggered = undefined; + } + // Temporarily expose input value. Use with caution. + public get showLastTriggeredInput() { + return this._showLastTriggered; } -} - -export class DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + // show_priority - computed: false, optional: true, required: false + private _showPriority?: boolean | cdktf.IResolvable; + public get showPriority() { + return this.getBooleanAttribute('show_priority'); + } + public set showPriority(value: boolean | cdktf.IResolvable) { + this._showPriority = value; + } + public resetShowPriority() { + this._showPriority = undefined; + } + // Temporarily expose input value. Use with caution. + public get showPriorityInput() { + return this._showPriority; } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); + } + public set sort(value: string) { + this._sort = value; + } + public resetSort() { + this._sort = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortInput() { + return this._sort; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } + // summary_type - computed: false, optional: true, required: false + private _summaryType?: string; + public get summaryType() { + return this.getStringAttribute('summary_type'); + } + public set summaryType(value: string) { + this._summaryType = value; + } + public resetSummaryType() { + this._summaryType = undefined; + } + // Temporarily expose input value. Use with caution. + public get summaryTypeInput() { + return this._summaryType; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set aggregation(value: string) { - this._aggregation = value; + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get titleInput() { + return this._title; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public set facet(value: string) { - this._facet = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetFacet() { - this._facet = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get titleAlignInput() { + return this._titleAlign; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public set interval(value: number) { - this._interval = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetInterval() { - this._interval = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get titleSizeInput() { + return this._titleSize; } } - -export class DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetNoteDefinition { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The background color of the note. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#background_color Dashboard#background_color} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly backgroundColor?: string; /** - * @param index the index of the item to return + * The content of the note. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#content Dashboard#content} */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestApmQuery { + readonly content: string; /** - * The name of the index to query. + * The size of the text. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#font_size Dashboard#font_size} */ - readonly index: string; + readonly fontSize?: string; /** - * The search query to use. + * Whether to add padding or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_padding Dashboard#has_padding} */ - readonly searchQuery?: string; + readonly hasPadding?: boolean | cdktf.IResolvable; /** - * compute_query block + * Whether to show a tick or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_tick Dashboard#show_tick} */ - readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery; + readonly showTick?: boolean | cdktf.IResolvable; /** - * group_by block + * The alignment of the widget's text. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_align Dashboard#text_align} */ - readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly textAlign?: string; /** - * multi_compute block + * When `tick = true`, a string indicating on which side of the widget the tick should be displayed. Valid values are `bottom`, `left`, `right`, `top`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tick_edge Dashboard#tick_edge} */ - readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly tickEdge?: string; + /** + * When `tick = true`, a string with a percent sign indicating the position of the tick, for example: `tick_pos = "50%"` is centered alignment. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tick_pos Dashboard#tick_pos} + */ + readonly tickPos?: string; + /** + * The vertical alignment for the widget. Valid values are `center`, `top`, `bottom`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#vertical_align Dashboard#vertical_align} + */ + readonly verticalAlign?: string; } -export function dashboardWidgetQueryTableDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmQuery): any { +export function dashboardWidgetNoteDefinitionToTerraform(struct?: DashboardWidgetNoteDefinitionOutputReference | DashboardWidgetNoteDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + background_color: cdktf.stringToTerraform(struct!.backgroundColor), + content: cdktf.stringToTerraform(struct!.content), + font_size: cdktf.stringToTerraform(struct!.fontSize), + has_padding: cdktf.booleanToTerraform(struct!.hasPadding), + show_tick: cdktf.booleanToTerraform(struct!.showTick), + text_align: cdktf.stringToTerraform(struct!.textAlign), + tick_edge: cdktf.stringToTerraform(struct!.tickEdge), + tick_pos: cdktf.stringToTerraform(struct!.tickPos), + vertical_align: cdktf.stringToTerraform(struct!.verticalAlign), } } -export class DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetNoteDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17136,169 +17104,257 @@ export class DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetNoteDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._backgroundColor !== undefined) { + hasAnyValues = true; + internalValueResult.backgroundColor = this._backgroundColor; + } + if (this._content !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.content = this._content; } - if (this._searchQuery !== undefined) { + if (this._fontSize !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.fontSize = this._fontSize; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._hasPadding !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.hasPadding = this._hasPadding; } - if (this._groupBy?.internalValue !== undefined) { + if (this._showTick !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.showTick = this._showTick; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._textAlign !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.textAlign = this._textAlign; + } + if (this._tickEdge !== undefined) { + hasAnyValues = true; + internalValueResult.tickEdge = this._tickEdge; + } + if (this._tickPos !== undefined) { + hasAnyValues = true; + internalValueResult.tickPos = this._tickPos; + } + if (this._verticalAlign !== undefined) { + hasAnyValues = true; + internalValueResult.verticalAlign = this._verticalAlign; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetNoteDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._backgroundColor = undefined; + this._content = undefined; + this._fontSize = undefined; + this._hasPadding = undefined; + this._showTick = undefined; + this._textAlign = undefined; + this._tickEdge = undefined; + this._tickPos = undefined; + this._verticalAlign = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._backgroundColor = value.backgroundColor; + this._content = value.content; + this._fontSize = value.fontSize; + this._hasPadding = value.hasPadding; + this._showTick = value.showTick; + this._textAlign = value.textAlign; + this._tickEdge = value.tickEdge; + this._tickPos = value.tickPos; + this._verticalAlign = value.verticalAlign; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // background_color - computed: false, optional: true, required: false + private _backgroundColor?: string; + public get backgroundColor() { + return this.getStringAttribute('background_color'); } - public set index(value: string) { - this._index = value; + public set backgroundColor(value: string) { + this._backgroundColor = value; + } + public resetBackgroundColor() { + this._backgroundColor = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get backgroundColorInput() { + return this._backgroundColor; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // content - computed: false, optional: false, required: true + private _content?: string; + public get content() { + return this.getStringAttribute('content'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set content(value: string) { + this._content = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + // Temporarily expose input value. Use with caution. + public get contentInput() { + return this._content; + } + + // font_size - computed: false, optional: true, required: false + private _fontSize?: string; + public get fontSize() { + return this.getStringAttribute('font_size'); + } + public set fontSize(value: string) { + this._fontSize = value; + } + public resetFontSize() { + this._fontSize = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get fontSizeInput() { + return this._fontSize; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // has_padding - computed: false, optional: true, required: false + private _hasPadding?: boolean | cdktf.IResolvable; + public get hasPadding() { + return this.getBooleanAttribute('has_padding'); } - public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set hasPadding(value: boolean | cdktf.IResolvable) { + this._hasPadding = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetHasPadding() { + this._hasPadding = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get hasPaddingInput() { + return this._hasPadding; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // show_tick - computed: false, optional: true, required: false + private _showTick?: boolean | cdktf.IResolvable; + public get showTick() { + return this.getBooleanAttribute('show_tick'); } - public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set showTick(value: boolean | cdktf.IResolvable) { + this._showTick = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetShowTick() { + this._showTick = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get showTickInput() { + return this._showTick; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // text_align - computed: false, optional: true, required: false + private _textAlign?: string; + public get textAlign() { + return this.getStringAttribute('text_align'); } - public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set textAlign(value: string) { + this._textAlign = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetTextAlign() { + this._textAlign = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get textAlignInput() { + return this._textAlign; + } + + // tick_edge - computed: false, optional: true, required: false + private _tickEdge?: string; + public get tickEdge() { + return this.getStringAttribute('tick_edge'); + } + public set tickEdge(value: string) { + this._tickEdge = value; + } + public resetTickEdge() { + this._tickEdge = undefined; + } + // Temporarily expose input value. Use with caution. + public get tickEdgeInput() { + return this._tickEdge; + } + + // tick_pos - computed: false, optional: true, required: false + private _tickPos?: string; + public get tickPos() { + return this.getStringAttribute('tick_pos'); + } + public set tickPos(value: string) { + this._tickPos = value; + } + public resetTickPos() { + this._tickPos = undefined; + } + // Temporarily expose input value. Use with caution. + public get tickPosInput() { + return this._tickPos; + } + + // vertical_align - computed: false, optional: true, required: false + private _verticalAlign?: string; + public get verticalAlign() { + return this.getStringAttribute('vertical_align'); + } + public set verticalAlign(value: string) { + this._verticalAlign = value; + } + public resetVerticalAlign() { + this._verticalAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get verticalAlignInput() { + return this._verticalAlign; } } -export interface DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns { +export interface DashboardWidgetQueryTableDefinitionCustomLink { /** - * A user-assigned alias for the column. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly alias?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly cellDisplayMode?: string; + readonly label?: string; /** - * The column name. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly name: string; + readonly link?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly order?: string; + readonly overrideLabel?: string; } -export function dashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionCustomLinkToTerraform(struct?: DashboardWidgetQueryTableDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - name: cdktf.stringToTerraform(struct!.name), - order: cdktf.stringToTerraform(struct!.order), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17312,39 +17368,39 @@ export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionCustomLink | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.alias = this._alias; + internalValueResult.isHidden = this._isHidden; } - if (this._cellDisplayMode !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.label = this._label; } - if (this._name !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.link = this._link; } - if (this._order !== undefined) { + if (this._overrideLabel !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._name = undefined; - this._order = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -17353,77 +17409,80 @@ export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutpu else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._name = value.name; - this._order = value.order; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set alias(value: string) { - this._alias = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; } - public resetAlias() { - this._alias = undefined; + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get isHiddenInput() { + return this._isHidden; } - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; + public set label(value: string) { + this._label = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get labelInput() { + return this._label; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public set name(value: string) { - this._name = value; + public set link(value: string) { + this._link = value; + } + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get linkInput() { + return this._link; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - public set order(value: string) { - this._order = value; + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public resetOrder() { - this._order = undefined; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get overrideLabelInput() { + return this._overrideLabel; } } -export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionCustomLink[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17437,72 +17496,166 @@ export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionCustomLinkOutputReference { + return new DashboardWidgetQueryTableDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestApmStatsQuery { +export interface DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery { /** - * The environment name. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly env: string; + readonly aggregation: string; /** - * The operation name associated with the service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly name: string; + readonly facet?: string; /** - * The organization's host group name and value. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag Dashboard#primary_tag} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly primaryTag: string; + readonly interval?: number; +} + +export function dashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + /** - * The resource name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource Dashboard#resource} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing */ - readonly resource?: string; + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} +export interface DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery { /** - * The level of detail for the request. Valid values are `service`, `resource`, `span`. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#row_type Dashboard#row_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly rowType: string; + readonly aggregation: string; /** - * The service name. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * columns block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#columns Dashboard#columns} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly columns?: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetQueryTableDefinitionRequestApmStatsQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmStatsQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - env: cdktf.stringToTerraform(struct!.env), - name: cdktf.stringToTerraform(struct!.name), - primary_tag: cdktf.stringToTerraform(struct!.primaryTag), - resource: cdktf.stringToTerraform(struct!.resource), - row_type: cdktf.stringToTerraform(struct!.rowType), - service: cdktf.stringToTerraform(struct!.service), - columns: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsToTerraform, true)(struct!.columns), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17513,236 +17666,115 @@ export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputRefere super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._primaryTag !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTag = this._primaryTag; - } - if (this._resource !== undefined) { - hasAnyValues = true; - internalValueResult.resource = this._resource; - } - if (this._rowType !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.rowType = this._rowType; + internalValueResult.aggregation = this._aggregation; } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._columns?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.columns = this._columns?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._env = undefined; - this._name = undefined; - this._primaryTag = undefined; - this._resource = undefined; - this._rowType = undefined; - this._service = undefined; - this._columns.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._env = value.env; - this._name = value.name; - this._primaryTag = value.primaryTag; - this._resource = value.resource; - this._rowType = value.rowType; - this._service = value.service; - this._columns.internalValue = value.columns; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // primary_tag - computed: false, optional: false, required: true - private _primaryTag?: string; - public get primaryTag() { - return this.getStringAttribute('primary_tag'); - } - public set primaryTag(value: string) { - this._primaryTag = value; - } - // Temporarily expose input value. Use with caution. - public get primaryTagInput() { - return this._primaryTag; - } - - // resource - computed: false, optional: true, required: false - private _resource?: string; - public get resource() { - return this.getStringAttribute('resource'); - } - public set resource(value: string) { - this._resource = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetResource() { - this._resource = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get resourceInput() { - return this._resource; + public get aggregationInput() { + return this._aggregation; } - // row_type - computed: false, optional: false, required: true - private _rowType?: string; - public get rowType() { - return this.getStringAttribute('row_type'); - } - public set rowType(value: string) { - this._rowType = value; - } - // Temporarily expose input value. Use with caution. - public get rowTypeInput() { - return this._rowType; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + public set facet(value: string) { + this._facet = value; } - public set service(value: string) { - this._service = value; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get facetInput() { + return this._facet; } - // columns - computed: false, optional: true, required: false - private _columns = new DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsList(this, "columns", false); - public get columns() { - return this._columns; - } - public putColumns(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns[] | cdktf.IResolvable) { - this._columns.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetColumns() { - this._columns.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get columnsInput() { - return this._columns.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetQueryTableDefinitionRequestConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; - /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; +export interface DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy { /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly palette: string; + readonly facet?: string; /** - * Defines the displayed timeframe. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly timeframe?: string; + readonly limit?: number; /** - * A value for the comparator. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly value: number; + readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetQueryTableDefinitionRequestConditionalFormatsToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17756,64 +17788,34 @@ export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputR super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._palette !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.facet = this._facet; } - if (this._timeframe !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.limit = this._limit; } - if (this._value !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -17822,156 +17824,217 @@ export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputR else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set customBgColor(value: string) { - this._customBgColor = value; + public set facet(value: string) { + this._facet = value; } - public resetCustomBgColor() { - this._customBgColor = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; + public get facetInput() { + return this._facet; } - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set customFgColor(value: string) { - this._customFgColor = value; + public set limit(value: number) { + this._limit = value; } - public resetCustomFgColor() { - this._customFgColor = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; + public get limitInput() { + return this._limit; } - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetHideValue() { - this._hideValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); +export class DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - public set imageUrl(value: string) { - this._imageUrl = value; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } - public resetImageUrl() { - this._imageUrl = undefined; +} +export interface DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} + +export function dashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } +} - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; +export class DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public resetMetric() { - this._metric = undefined; + + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } } - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set palette(value: string) { - this._palette = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get aggregationInput() { + return this._aggregation; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set timeframe(value: string) { - this._timeframe = value; + public set facet(value: string) { + this._facet = value; } - public resetTimeframe() { - this._timeframe = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + public get facetInput() { + return this._facet; } - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set value(value: number) { - this._value = value; + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get intervalInput() { + return this._interval; } } -export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17985,375 +18048,261 @@ export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsList ex /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; +export interface DashboardWidgetQueryTableDefinitionRequestApmQuery { /** - * Displays an image as the background. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly imageUrl?: string; + readonly index: string; /** - * The metric from the request to correlate with this conditional format. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly metric?: string; + readonly searchQuery?: string; /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly palette: string; + readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery; /** - * Defines the displayed timeframe. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly timeframe?: string; + readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; /** - * A value for the comparator. + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly value: number; + readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; + internalValueResult.index = this._index; } - if (this._metric !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.searchQuery = this._searchQuery; } - if (this._palette !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._timeframe !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._value !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } + return hasAnyValues ? internalValueResult : undefined; } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); - } - public set customBgColor(value: string) { - this._customBgColor = value; - } - public resetCustomBgColor() { - this._customBgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; - } - - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); - } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } } - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); - } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetHideValue() { - this._hideValue = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get indexInput() { + return this._index; } - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set imageUrl(value: string) { - this._imageUrl = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetImageUrl() { - this._imageUrl = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get searchQueryInput() { + return this._searchQuery; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestApmQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public set palette(value: string) { - this._palette = value; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryTableDefinitionRequestApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set timeframe(value: string) { - this._timeframe = value; + public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetTimeframe() { - this._timeframe = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + public get groupByInput() { + return this._groupBy.internalValue; } - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set value(value: number) { - this._value = value; + public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } - -export class DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable - +export interface DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * A user-assigned alias for the column. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly alias?: string; /** - * @param index the index of the item to return + * A list of display modes for each table cell. Valid values are `number`, `bar`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestFormulaLimit { + readonly cellDisplayMode?: string; /** - * The number of results to return + * The column name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly count?: number; + readonly name: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * Widget sorting methods. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ readonly order?: string; } -export function dashboardWidgetQueryTableDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReference | DashboardWidgetQueryTableDefinitionRequestFormulaLimit): any { +export function dashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + name: cdktf.stringToTerraform(struct!.name), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.alias = this._alias; + } + if (this._cellDisplayMode !== undefined) { + hasAnyValues = true; + internalValueResult.cellDisplayMode = this._cellDisplayMode; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; } if (this._order !== undefined) { hasAnyValues = true; @@ -18362,33 +18311,72 @@ export class DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReferen return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; + this.resolvableValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._name = undefined; this._order = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; + this.resolvableValue = undefined; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._name = value.name; this._order = value.order; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); + } + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; + } + // Temporarily expose input value. Use with caution. + public get aliasInput() { + return this._alias; + } + + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); + } + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; + } + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; + } + // Temporarily expose input value. Use with caution. + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - public set count(value: number) { - this._count = value; + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public resetCount() { - this._count = undefined; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get nameInput() { + return this._name; } // order - computed: false, optional: true, required: false @@ -18407,493 +18395,650 @@ export class DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReferen return this._order; } } -export interface DashboardWidgetQueryTableDefinitionRequestFormula { + +export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns[] | cdktf.IResolvable + /** - * An expression alias. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryTableDefinitionRequestApmStatsQuery { + /** + * The environment name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly alias?: string; + readonly env: string; /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. + * The operation name associated with the service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly cellDisplayMode?: string; + readonly name: string; /** - * A string expression built from queries, formulas, and functions. + * The organization's host group name and value. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag Dashboard#primary_tag} */ - readonly formulaExpression: string; + readonly primaryTag: string; /** - * conditional_formats block + * The resource name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource Dashboard#resource} */ - readonly conditionalFormats?: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly resource?: string; /** - * limit block + * The level of detail for the request. Valid values are `service`, `resource`, `span`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#row_type Dashboard#row_type} */ - readonly limit?: DashboardWidgetQueryTableDefinitionRequestFormulaLimit; + readonly rowType: string; + /** + * The service name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * columns block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#columns Dashboard#columns} + */ + readonly columns?: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns[] | cdktf.IResolvable; } -export function dashboardWidgetQueryTableDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestApmStatsQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestApmStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetQueryTableDefinitionRequestFormulaLimitToTerraform(struct!.limit), + env: cdktf.stringToTerraform(struct!.env), + name: cdktf.stringToTerraform(struct!.name), + primary_tag: cdktf.stringToTerraform(struct!.primaryTag), + resource: cdktf.stringToTerraform(struct!.resource), + row_type: cdktf.stringToTerraform(struct!.rowType), + service: cdktf.stringToTerraform(struct!.service), + columns: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsToTerraform, true)(struct!.columns), } } -export class DashboardWidgetQueryTableDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestFormula | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestApmStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.alias = this._alias; + internalValueResult.env = this._env; } - if (this._cellDisplayMode !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.name = this._name; } - if (this._formulaExpression !== undefined) { + if (this._primaryTag !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.primaryTag = this._primaryTag; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._resource !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.resource = this._resource; } - if (this._limit?.internalValue !== undefined) { + if (this._rowType !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.rowType = this._rowType; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._columns?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.columns = this._columns?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._env = undefined; + this._name = undefined; + this._primaryTag = undefined; + this._resource = undefined; + this._rowType = undefined; + this._service = undefined; + this._columns.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._env = value.env; + this._name = value.name; + this._primaryTag = value.primaryTag; + this._resource = value.resource; + this._rowType = value.rowType; + this._service = value.service; + this._columns.internalValue = value.columns; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetAlias() { - this._alias = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get envInput() { + return this._env; } - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; + public set name(value: string) { + this._name = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // primary_tag - computed: false, optional: false, required: true + private _primaryTag?: string; + public get primaryTag() { + return this.getStringAttribute('primary_tag'); + } + public set primaryTag(value: string) { + this._primaryTag = value; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get primaryTagInput() { + return this._primaryTag; } - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // resource - computed: false, optional: true, required: false + private _resource?: string; + public get resource() { + return this.getStringAttribute('resource'); } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public set resource(value: string) { + this._resource = value; + } + public resetResource() { + this._resource = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get resourceInput() { + return this._resource; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // row_type - computed: false, optional: false, required: true + private _rowType?: string; + public get rowType() { + return this.getStringAttribute('row_type'); } - public putConditionalFormats(value: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public set rowType(value: string) { + this._rowType = value; + } + // Temporarily expose input value. Use with caution. + public get rowTypeInput() { + return this._rowType; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public set service(value: string) { + this._service = value; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get serviceInput() { + return this._service; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // columns - computed: false, optional: true, required: false + private _columns = new DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumnsList(this, "columns", false); + public get columns() { + return this._columns; } - public putLimit(value: DashboardWidgetQueryTableDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public putColumns(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQueryColumns[] | cdktf.IResolvable) { + this._columns.internalValue = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetColumns() { + this._columns.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get columnsInput() { + return this._columns.internalValue; } } - -export class DashboardWidgetQueryTableDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestFormula[] | cdktf.IResolvable - +export interface DashboardWidgetQueryTableDefinitionRequestConditionalFormats { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly comparator: string; /** - * @param index the index of the item to return + * The color palette to apply to the background, same values available as palette. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestFormulaOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery { + readonly customBgColor?: string; /** - * The aggregation method. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly aggregation: string; + readonly customFgColor?: string; /** - * The facet name. + * Setting this to True hides values. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly facet?: string; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * Define the time interval in seconds. + * Displays an image as the background. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} */ - readonly interval?: number; + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestConditionalFormatsToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.comparator = this._comparator; } - if (this._facet !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.customBgColor = this._customBgColor; } - if (this._interval !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set comparator(value: string) { + this._comparator = value; + } + // Temporarily expose input value. Use with caution. + public get comparatorInput() { + return this._comparator; + } + + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); + } + public set customBgColor(value: string) { + this._customBgColor = value; + } + public resetCustomBgColor() { + this._customBgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customBgColorInput() { + return this._customBgColor; + } + + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); + } + public set customFgColor(value: string) { + this._customFgColor = value; + } + public resetCustomFgColor() { + this._customFgColor = undefined; + } + // Temporarily expose input value. Use with caution. + public get customFgColorInput() { + return this._customFgColor; + } + + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); + } + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; + } + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get hideValueInput() { + return this._hideValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); } - public set facet(value: string) { - this._facet = value; + public set imageUrl(value: string) { + this._imageUrl = value; } - public resetFacet() { - this._facet = undefined; + public resetImageUrl() { + this._imageUrl = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get imageUrlInput() { + return this._imageUrl; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set interval(value: number) { - this._interval = value; + public set metric(value: string) { + this._metric = value; } - public resetInterval() { - this._interval = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get metricInput() { + return this._metric; } -} -export interface DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} -export function dashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } -} - -export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public set palette(value: string) { + this._palette = value; } - - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + public set timeframe(value: string) { + this._timeframe = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetTimeframe() { + this._timeframe = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get timeframeInput() { + return this._timeframe; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); } - public resetFacet() { - this._facet = undefined; + public set value(value: number) { + this._value = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get valueInput() { + return this._value; } +} - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; +export class DashboardWidgetQueryTableDefinitionRequestConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestConditionalFormats[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy { +export interface DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats { /** - * The facet name. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly facet?: string; + readonly comparator: string; /** - * The maximum number of items in the group. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly limit?: number; + readonly customBgColor?: string; /** - * sort_query block + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery; + readonly customFgColor?: string; + /** + * Setting this to True hides values. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + */ + readonly hideValue?: boolean | cdktf.IResolvable; + /** + * Displays an image as the background. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + */ + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetQueryTableDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -18907,34 +19052,64 @@ export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputRefe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.comparator = this._comparator; } - if (this._limit !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.customBgColor = this._customBgColor; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -18943,63 +19118,156 @@ export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputRefe else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set facet(value: string) { - this._facet = value; + public set comparator(value: string) { + this._comparator = value; } - public resetFacet() { - this._facet = undefined; + // Temporarily expose input value. Use with caution. + public get comparatorInput() { + return this._comparator; + } + + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); + } + public set customBgColor(value: string) { + this._customBgColor = value; + } + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get customBgColorInput() { + return this._customBgColor; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set limit(value: number) { - this._limit = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - public resetLimit() { - this._limit = undefined; + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get customFgColorInput() { + return this._customFgColor; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get hideValueInput() { + return this._hideValue; + } + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } + + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); + } + public set timeframe(value: string) { + this._timeframe = value; + } + public resetTimeframe() { + this._timeframe = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; } } -export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19013,385 +19281,352 @@ export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByList exten /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetQueryTableDefinitionRequestFormulaLimit { /** - * The facet name. + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly facet?: string; + readonly count?: number; /** - * Define the time interval in seconds. + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order?: string; } -export function dashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReference | DashboardWidgetQueryTableDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + count: cdktf.numberToTerraform(struct!.count), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.count = this._count; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._count = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._count = value.count; + this._order = value.order; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set facet(value: string) { - this._facet = value; + public set count(value: number) { + this._count = value; } - public resetFacet() { - this._facet = undefined; + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get countInput() { + return this._count; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set interval(value: number) { - this._interval = value; + public set order(value: string) { + this._order = value; } - public resetInterval() { - this._interval = undefined; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get orderInput() { + return this._order; } } -export interface DashboardWidgetQueryTableDefinitionRequestLogQuery { +export interface DashboardWidgetQueryTableDefinitionRequestFormula { /** - * The name of the index to query. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly index: string; + readonly alias?: string; /** - * The search query to use. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly searchQuery?: string; + readonly cellDisplayMode?: string; /** - * compute_query block + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery; + readonly formulaExpression: string; /** - * group_by block + * conditional_formats block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} */ - readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly conditionalFormats?: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; /** - * multi_compute block + * limit block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly limit?: DashboardWidgetQueryTableDefinitionRequestFormulaLimit; } -export function dashboardWidgetQueryTableDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestLogQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetQueryTableDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetQueryTableDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestFormula | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.alias = this._alias; } - if (this._searchQuery !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.formulaExpression = this._formulaExpression; } - if (this._groupBy?.internalValue !== undefined) { + if (this._conditionalFormats?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._limit?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set index(value: string) { - this._index = value; + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aliasInput() { + return this._alias; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + // Temporarily expose input value. Use with caution. + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set formulaExpression(value: string) { + this._formulaExpression = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get formulaExpressionInput() { + return this._formulaExpression; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; } - public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putConditionalFormats(value: DashboardWidgetQueryTableDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetQueryTableDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; } - public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putLimit(value: DashboardWidgetQueryTableDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetLimit() { + this._limit.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get limitInput() { + return this._limit.internalValue; } } -export interface DashboardWidgetQueryTableDefinitionRequestProcessQuery { + +export class DashboardWidgetQueryTableDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestFormula[] | cdktf.IResolvable + /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly filterBy?: string[]; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The max number of items in the filter list. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryTableDefinitionRequestFormulaOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery { + /** + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly limit?: number; + readonly aggregation: string; /** - * Your chosen metric. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly metric: string; + readonly facet?: string; /** - * Your chosen search term. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly searchBy?: string; + readonly interval?: number; } -export function dashboardWidgetQueryTableDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestProcessQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19402,189 +19637,118 @@ export class DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReferen super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } - if (this._metric !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.facet = this._facet; } - if (this._searchBy !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; - } - public resetFilterBy() { - this._filterBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public set aggregation(value: string) { + this._aggregation = value; } -} -export interface DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName: string; - /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} - */ - readonly primaryTagName?: string; - /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} - */ - readonly primaryTagValue?: string; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} +export interface DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly stat: string; + readonly order: string; } -export function dashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19595,721 +19759,613 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.aggregation = this._aggregation; } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._stat !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set env(value: string) { - this._env = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get aggregationInput() { + return this._aggregation; } - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + public set facet(value: string) { + this._facet = value; } - public resetIsUpstream() { - this._isUpstream = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get facetInput() { + return this._facet; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set name(value: string) { - this._name = value; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get orderInput() { + return this._order; } +} +export interface DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery; +} - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); +export function dashboardWidgetQueryTableDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public set operationName(value: string) { - this._operationName = value; + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } - // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; +} + +export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); - } - public set primaryTagName(value: string) { - this._primaryTagName = value; - } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set facet(value: string) { + this._facet = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get facetInput() { + return this._facet; } - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + public set limit(value: number) { + this._limit = value; } - public set service(value: string) { - this._service = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get limitInput() { + return this._limit; } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set stat(value: string) { - this._stat = value; + public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Array of fields to group results by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: string[]; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName?: string; + +export class DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable + /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly primaryTagName?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * @param index the index of the item to return */ - readonly primaryTagValue?: string; + public get(index: number): DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName?: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly stat: string; + readonly interval?: number; } -export function dashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._groupBy !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.aggregation = this._aggregation; } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._stat !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); - } - public set groupBy(value: string[]) { - this._groupBy = value; - } - public resetGroupBy() { - this._groupBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetOperationName() { - this._operationName = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get aggregationInput() { + return this._aggregation; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set facet(value: string) { + this._facet = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get facetInput() { + return this._facet; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set interval(value: number) { + this._interval = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get intervalInput() { + return this._interval; } +} - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - public resetResourceName() { - this._resourceName = undefined; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; - } +export class DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; - } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetQueryTableDefinitionRequestLogQuery { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * A time interval in milliseconds. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly interval?: number; + readonly searchQuery?: string; /** - * The measurable attribute to compute. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly metric?: string; + readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestLogQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._interval !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.searchQuery = this._searchQuery; } - if (this._metric !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; - this._metric = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; - this._metric = value.metric; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set interval(value: number) { - this._interval = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetInterval() { - this._interval = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get searchQueryInput() { + return this._searchQuery; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set metric(value: string) { - this._metric = value; + public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetMetric() { - this._metric = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get computeQueryInput() { + return this._computeQuery.internalValue; } -} - -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryTableDefinitionRequestLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort { +export interface DashboardWidgetQueryTableDefinitionRequestProcessQuery { /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly aggregation: string; + readonly filterBy?: string[]; /** - * The metric used for sorting group by results. + * The max number of items in the filter list. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * Your chosen metric. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric?: string; + readonly metric: string; /** - * Direction of sort. Valid values are `asc`, `desc`. + * Your chosen search term. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} */ - readonly order?: string; + readonly searchBy?: string; } -export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort): any { +export function dashboardWidgetQueryTableDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -20320,53 +20376,78 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySor super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.filterBy = this._filterBy; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._order !== undefined) { + if (this._searchBy !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; + this._filterBy = undefined; + this._limit = undefined; this._metric = undefined; - this._order = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; + this._filterBy = value.filterBy; + this._limit = value.limit; this._metric = value.metric; - this._order = value.order; + this._searchBy = value.searchBy; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set aggregation(value: string) { - this._aggregation = value; + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get filterByInput() { + return this._filterBy; } - // metric - computed: false, optional: true, required: false + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // metric - computed: false, optional: false, required: true private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -20374,27 +20455,24 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySor public set metric(value: string) { this._metric = value; } - public resetMetric() { - this._metric = undefined; - } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); } - public set order(value: string) { - this._order = value; + public set searchBy(value: string) { + this._searchBy = value; } - public resetOrder() { - this._order = undefined; + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get searchByInput() { + return this._searchBy; } } diff --git a/src/dashboard/index-structs/structs2400.ts b/src/dashboard/index-structs/structs2400.ts index be5dcda67..8825066ef 100644 --- a/src/dashboard/index-structs/structs2400.ts +++ b/src/dashboard/index-structs/structs2400.ts @@ -1,17 +1,5 @@ import * as cdktf from 'cdktf'; -import { DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort, -dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortToTerraform, -DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference, -DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute, -dashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeToTerraform, -DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeList, -DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery, -dashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryToTerraform, -DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference, -DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery, -dashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryToTerraform, -DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference, -DashboardWidgetQueryTableDefinitionRequestApmQuery, +import { DashboardWidgetQueryTableDefinitionRequestApmQuery, dashboardWidgetQueryTableDefinitionRequestApmQueryToTerraform, DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference, DashboardWidgetQueryTableDefinitionRequestApmStatsQuery, @@ -32,237 +20,332 @@ DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference, DashboardWidgetQueryTableDefinitionCustomLink, dashboardWidgetQueryTableDefinitionCustomLinkToTerraform, DashboardWidgetQueryTableDefinitionCustomLinkList } from './structs2000' -export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery { /** - * The event facet. + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet: string; + readonly dataSource: string; /** - * The number of groups to return. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly limit?: number; + readonly env: string; /** - * sort block + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly sort?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort; + readonly isUpstream?: boolean | cdktf.IResolvable; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Name of operation on service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + */ + readonly operationName: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._sort?.internalValue !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sort.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sort.internalValue = value.sort; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetLimit() { - this._limit = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get envInput() { + return this._env; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); } - public putSort(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get isUpstreamInput() { + return this._isUpstream; } -} -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set name(value: string) { + this._name = value; } -} -export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch { - /** - * The events search string. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query: string; -} - -export function dashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - return { - query: cdktf.stringToTerraform(struct!.query), + + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; } -} -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._query !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query; - } - return hasAnyValues ? internalValueResult : undefined; + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._query = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; - } + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); } - public set query(value: string) { - this._query = value; + public set stat(value: string) { + this._stat = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get statInput() { + return this._stat; } } -export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQuery { +export interface DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery { /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ readonly dataSource: string; /** - * An array of index names to query in the stream. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly indexes?: string[]; + readonly env: string; + /** + * Array of fields to group results by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: string[]; /** * The name of query for use in formulas. * @@ -270,41 +353,63 @@ export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQuery { */ readonly name: string; /** - * compute block + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly compute: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly operationName?: string; /** - * group_by block + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly primaryTagName?: string; /** - * search block + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly search?: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch; + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -315,54 +420,78 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputRefe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._indexes !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.env = this._env; + } + if (this._groupBy !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._compute?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.operationName = this._operationName; } - if (this._groupBy?.internalValue !== undefined) { + if (this._primaryTagName !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.primaryTagName = this._primaryTagName; } - if (this._search?.internalValue !== undefined) { + if (this._primaryTagValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._dataSource = undefined; - this._indexes = undefined; + this._env = undefined; + this._groupBy = undefined; this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dataSource = value.dataSource; - this._indexes = value.indexes; + this._env = value.env; + this._groupBy = value.groupBy; this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } @@ -379,26 +508,39 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputRefe return this._dataSource; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); - } - public set indexes(value: string[]) { - this._indexes = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetIndexes() { - this._indexes = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get envInput() { + return this._env; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } public set name(value: string) { this._name = value; @@ -408,275 +550,284 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputRefe return this._name; } - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public putCompute(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get operationNameInput() { + return this._operationName; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get primaryTagNameInput() { + return this._primaryTagName; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public putSearch(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute { /** - * The data source for metrics queries. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly dataSource?: string; + readonly aggregation: string; /** - * The name of the query for use in formulas. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly name: string; + readonly interval?: number; /** - * The metrics query definition. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly query: string; + readonly metric?: string; } -export function dashboardWidgetQueryTableDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.aggregation = this._aggregation; } - if (this._name !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.interval = this._interval; } - if (this._query !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.metric = this._metric; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; + this._metric = value.metric; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetAggregator() { - this._aggregator = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get aggregationInput() { + return this._aggregation; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set dataSource(value: string) { - this._dataSource = value; + public set interval(value: number) { + this._interval = value; } - public resetDataSource() { - this._dataSource = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get intervalInput() { + return this._interval; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set name(value: string) { - this._name = value; + public set metric(value: string) { + this._metric = value; } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); - } - public set query(value: string) { - this._query = value; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get metricInput() { + return this._metric; } } -export interface DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; + +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly dataSource: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + * @param index the index of the item to return */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + public get(index: number): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort { /** - * The number of hits to return. + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly limit?: number; + readonly aggregation: string; /** - * The process metric name. + * The metric used for sorting group by results. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric: string; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * The direction of the sort. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} - */ - readonly sort?: string; - /** - * An array of tags to filter by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} - */ - readonly tagFilters?: string[]; + readonly metric?: string; /** - * The text to use as a filter. + * Direction of sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly textFilter?: string; + readonly order?: string; } -export function dashboardWidgetQueryTableDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), + aggregation: cdktf.stringToTerraform(struct!.aggregation), metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -687,137 +838,53 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputRe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { - hasAnyValues = true; - internalValueResult.sort = this._sort; - } - if (this._tagFilters !== undefined) { - hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; - } - if (this._textFilter !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; + this._aggregation = undefined; this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; + this._aggregation = value.aggregation; this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._order = value.order; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; - } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; - } - // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLimit() { - this._limit = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get aggregationInput() { + return this._aggregation; } - // metric - computed: false, optional: false, required: true + // metric - computed: false, optional: true, required: false private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -825,120 +892,64 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputRe public set metric(value: string) { this._metric = value; } + public resetMetric() { + this._metric = undefined; + } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set name(value: string) { - this._name = value; + public set order(value: string) { + this._order = value; + } + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get orderInput() { + return this._order; } +} +export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy { + /** + * The event facet. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet: string; + /** + * The number of groups to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort; +} - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); - } - public set sort(value: string) { - this._sort = value; - } - public resetSort() { - this._sort = undefined; - } - // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; - } - - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); - } - public set tagFilters(value: string[]) { - this._tagFilters = value; - } - public resetTagFilters() { - this._tagFilters = undefined; - } - // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; - } - - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); - } - public set textFilter(value: string) { - this._textFilter = value; - } - public resetTextFilter() { - this._textFilter = undefined; - } - // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; - } -} -export interface DashboardWidgetQueryTableDefinitionRequestQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery; - /** - * apm_resource_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} - */ - readonly apmResourceStatsQuery?: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery; - /** - * event_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} - */ - readonly eventQuery?: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery; - /** - * metric_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} - */ - readonly metricQuery?: DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery; -} - -export function dashboardWidgetQueryTableDefinitionRequestQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQuery | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); +export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetQueryTableDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetQueryTableDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetQueryTableDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetQueryTableDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -952,44 +963,34 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryOutputReference exte super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQuery | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; - } - if (this._eventQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._processQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -998,97 +999,60 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryOutputReference exte else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; - } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; - } - - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; - } - public putApmResourceStatsQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; - } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; - } - - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; - } - public putEventQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public set facet(value: string) { + this._facet = value; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get facetInput() { + return this._facet; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetQueryTableDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetricQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get limitInput() { + return this._limit; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putProcessQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public putSort(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetQueryTableDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestQuery[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -1102,44 +1066,30 @@ export class DashboardWidgetQueryTableDefinitionRequestQueryList extends cdktf.C /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestQueryOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; +export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch { /** - * Define the time interval in seconds. + * The events search string. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query: string; } -export function dashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1150,118 +1100,102 @@ export class DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutpu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public resetInterval() { - this._interval = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } -export interface DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery { +export interface DashboardWidgetQueryTableDefinitionRequestQueryEventQuery { /** - * The aggregation method. + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregation: string; + readonly dataSource: string; /** - * The facet name. + * An array of index names to query in the stream. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - readonly facet?: string; + readonly indexes?: string[]; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly order: string; + readonly name: string; + /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** + * compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + */ + readonly compute: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1272,440 +1206,390 @@ export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._facet !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.indexes = this._indexes; } - if (this._order !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set aggregation(value: string) { - this._aggregation = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get dataSourceInput() { + return this._dataSource; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public set facet(value: string) { - this._facet = value; + public set indexes(value: string[]) { + this._indexes = value; } - public resetFacet() { - this._facet = undefined; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get indexesInput() { + return this._indexes; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set order(value: string) { - this._order = value; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get nameInput() { + return this._name; } -} -export interface DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery; -} -export function dashboardWidgetQueryTableDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), - } -} - -export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public set storage(value: string) { + this._storage = value; } - - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + public resetStorage() { + this._storage = undefined; } - - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; } - public resetFacet() { - this._facet = undefined; + public putCompute(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get computeInput() { + return this._compute.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set limit(value: number) { - this._limit = value; + public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get groupByInput() { + return this._groupBy.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; } - public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putSearch(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetSearch() { + this._search.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get searchInput() { + return this._search.internalValue; } } - -export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - +export interface DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery { /** - * @param index the index of the item to return + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute { + readonly aggregator?: string; /** - * The aggregation method. + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregation: string; + readonly dataSource?: string; /** - * The facet name. + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly facet?: string; + readonly name: string; /** - * Define the time interval in seconds. + * The metrics query definition. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query: string; } -export function dashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._interval !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetFacet() { - this._facet = undefined; + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set interval(value: number) { - this._interval = value; + public set name(value: string) { + this._name = value; } - public resetInterval() { - this._interval = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } - -export class DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly aggregator?: string; /** - * @param index the index of the item to return + * The data source for process queries. Valid values are `process`, `container`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestRumQuery { + readonly dataSource: string; /** - * The name of the index to query. + * Whether to normalize the CPU percentages. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} */ - readonly index: string; + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; /** - * The search query to use. + * The number of hits to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly searchQuery?: string; + readonly limit?: number; /** - * compute_query block + * The process metric name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery; + readonly metric: string; /** - * group_by block + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly name: string; /** - * multi_compute block + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly sort?: string; + /** + * An array of tags to filter by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + */ + readonly tagFilters?: string[]; + /** + * The text to use as a filter. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + */ + readonly textFilter?: string; } -export function dashboardWidgetQueryTableDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestRumQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1716,509 +1600,408 @@ export class DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.aggregator = this._aggregator; } - if (this._searchQuery !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.dataSource = this._dataSource; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; } - if (this._groupBy?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.limit = this._limit; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set index(value: string) { - this._index = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aggregatorInput() { + return this._aggregator; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetSearchQuery() { - this._searchQuery = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get dataSourceInput() { + return this._dataSource; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); } - public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get limitInput() { + return this._limit; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set metric(value: string) { + this._metric = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get metricInput() { + return this._metric; } -} -export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Define the time interval in seconds. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} - */ - readonly interval?: number; -} -export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } -} - -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public set name(value: string) { + this._name = value; } - - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + public set sort(value: string) { + this._sort = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetSort() { + this._sort = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get sortInput() { + return this._sort; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); } - public set facet(value: string) { - this._facet = value; + public set tagFilters(value: string[]) { + this._tagFilters = value; } - public resetFacet() { - this._facet = undefined; + public resetTagFilters() { + this._tagFilters = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get tagFiltersInput() { + return this._tagFilters; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); } - public set interval(value: number) { - this._interval = value; + public set textFilter(value: string) { + this._textFilter = value; } - public resetInterval() { - this._interval = undefined; + public resetTextFilter() { + this._textFilter = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery { +export interface DashboardWidgetQueryTableDefinitionRequestQuery { /** - * The aggregation method. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly aggregation: string; + readonly apmDependencyStatsQuery?: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery; /** - * The facet name. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly facet?: string; + readonly apmResourceStatsQuery?: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly order: string; + readonly eventQuery?: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery; + /** + * metric_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + */ + readonly metricQuery?: DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + apm_dependency_stats_query: dashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetQueryTableDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetQueryTableDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetQueryTableDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestQuery | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._facet !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._order !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.eventQuery = this._eventQuery?.internalValue; + } + if (this._metricQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.metricQuery = this._metricQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + public putApmDependencyStatsQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; } - public set order(value: string) { - this._order = value; + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } -} -export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery; -} -export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } -} - -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public putApmResourceStatsQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } - - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // Temporarily expose input value. Use with caution. + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetQueryTableDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public set facet(value: string) { - this._facet = value; + public putEventQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get eventQueryInput() { + return this._eventQuery.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetQueryTableDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; } - public set limit(value: number) { - this._limit = value; + public putMetricQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get metricQueryInput() { + return this._metricQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetQueryTableDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putProcessQuery(value: DashboardWidgetQueryTableDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get processQueryInput() { + return this._processQuery.internalValue; } } -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestQuery[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -2232,11 +2015,11 @@ export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestQueryOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute { +export interface DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery { /** * The aggregation method. * @@ -2257,7 +2040,7 @@ export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCom readonly interval?: number; } -export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -2269,24 +2052,18 @@ export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComp } } -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -2304,21 +2081,15 @@ export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -2370,74 +2141,40 @@ export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute return this._interval; } } - -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryTableDefinitionRequestSecurityQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; - /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestSecurityQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -2448,347 +2185,156 @@ export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputRefere super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetQueryTableDefinitionRequest { - /** - * The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The alias for the column name (defaults to metric name). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} - */ - readonly alias?: string; +export interface DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy { /** - * A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly cellDisplayMode?: string[]; + readonly facet?: string; /** - * The number of lines to show in the table. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * The sort order for the rows. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order?: string; - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetQueryTableDefinitionRequestApmQuery; - /** - * apm_stats_query block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_stats_query Dashboard#apm_stats_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly apmStatsQuery?: DashboardWidgetQueryTableDefinitionRequestApmStatsQuery; + readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery; +} + +export function dashboardWidgetQueryTableDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + } +} + +export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + /** - * conditional_formats block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} - */ - readonly conditionalFormats?: DashboardWidgetQueryTableDefinitionRequestConditionalFormats[] | cdktf.IResolvable; - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetQueryTableDefinitionRequestFormula[] | cdktf.IResolvable; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetQueryTableDefinitionRequestLogQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetQueryTableDefinitionRequestProcessQuery; - /** - * query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query?: DashboardWidgetQueryTableDefinitionRequestQuery[] | cdktf.IResolvable; - /** - * rum_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} - */ - readonly rumQuery?: DashboardWidgetQueryTableDefinitionRequestRumQuery; - /** - * security_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} - */ - readonly securityQuery?: DashboardWidgetQueryTableDefinitionRequestSecurityQuery; -} - -export function dashboardWidgetQueryTableDefinitionRequestToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequest | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.cellDisplayMode), - limit: cdktf.numberToTerraform(struct!.limit), - order: cdktf.stringToTerraform(struct!.order), - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetQueryTableDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - apm_stats_query: dashboardWidgetQueryTableDefinitionRequestApmStatsQueryToTerraform(struct!.apmStatsQuery), - conditional_formats: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - formula: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetQueryTableDefinitionRequestLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetQueryTableDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetQueryTableDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetQueryTableDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), - } -} - -export class DashboardWidgetQueryTableDefinitionRequestOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinitionRequest | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._alias !== undefined) { - hasAnyValues = true; - internalValueResult.alias = this._alias; - } - if (this._cellDisplayMode !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.facet = this._facet; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._apmStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmStatsQuery = this._apmStatsQuery?.internalValue; - } - if (this._conditionalFormats?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; - } - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._query?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; - } - if (this._rumQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; - } - if (this._securityQuery?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregator = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; + this._facet = undefined; this._limit = undefined; - this._order = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._apmStatsQuery.internalValue = undefined; - this._conditionalFormats.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -2797,70 +2343,26 @@ export class DashboardWidgetQueryTableDefinitionRequestOutputReference extends c else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregator = value.aggregator; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; + this._facet = value.facet; this._limit = value.limit; - this._order = value.order; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._apmStatsQuery.internalValue = value.apmStatsQuery; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._sortQuery.internalValue = value.sortQuery; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; - } - public resetAlias() { - this._alias = undefined; - } - // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; - } - - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string[]; - public get cellDisplayMode() { - return this.getListAttribute('cell_display_mode'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set cellDisplayMode(value: string[]) { - this._cellDisplayMode = value; + public set facet(value: string) { + this._facet = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get facetInput() { + return this._facet; } // limit - computed: false, optional: true, required: false @@ -2879,185 +2381,25 @@ export class DashboardWidgetQueryTableDefinitionRequestOutputReference extends c return this._limit; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set order(value: string) { - this._order = value; + public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetOrder() { - this._order = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetQueryTableDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // apm_stats_query - computed: false, optional: true, required: false - private _apmStatsQuery = new DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputReference(this, "apm_stats_query"); - public get apmStatsQuery() { - return this._apmStatsQuery; - } - public putApmStatsQuery(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQuery) { - this._apmStatsQuery.internalValue = value; - } - public resetApmStatsQuery() { - this._apmStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmStatsQueryInput() { - return this._apmStatsQuery.internalValue; - } - - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetQueryTableDefinitionRequestConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; - } - public putConditionalFormats(value: DashboardWidgetQueryTableDefinitionRequestConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; - } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; - } - - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetQueryTableDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetQueryTableDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; - } - public resetFormula() { - this._formula.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetQueryTableDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetQueryTableDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; - } - public resetLogQuery() { - this._logQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetQueryTableDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; - } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; - } - - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetQueryTableDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; - } - public putQuery(value: DashboardWidgetQueryTableDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; - } - public resetQuery() { - this._query.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; - } - - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; - } - public putRumQuery(value: DashboardWidgetQueryTableDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; - } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; - } - - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; - } - public putSecurityQuery(value: DashboardWidgetQueryTableDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; - } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; - } -} - -export class DashboardWidgetQueryTableDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryTableDefinitionRequest[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -3071,438 +2413,345 @@ export class DashboardWidgetQueryTableDefinitionRequestList extends cdktf.Comple /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryTableDefinitionRequestOutputReference { - return new DashboardWidgetQueryTableDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryTableDefinition { - /** - * Controls the display of the search bar. Valid values are `always`, `never`, `auto`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_search_bar Dashboard#has_search_bar} - */ - readonly hasSearchBar?: string; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; +export interface DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute { /** - * The size of the widget's title (defaults to 16). + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly titleSize?: string; + readonly aggregation: string; /** - * custom_link block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly customLink?: DashboardWidgetQueryTableDefinitionCustomLink[] | cdktf.IResolvable; + readonly facet?: string; /** - * request block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly request?: DashboardWidgetQueryTableDefinitionRequest[] | cdktf.IResolvable; + readonly interval?: number; } -export function dashboardWidgetQueryTableDefinitionToTerraform(struct?: DashboardWidgetQueryTableDefinitionOutputReference | DashboardWidgetQueryTableDefinition): any { +export function dashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - has_search_bar: cdktf.stringToTerraform(struct!.hasSearchBar), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetQueryTableDefinitionCustomLinkToTerraform, true)(struct!.customLink), - request: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestToTerraform, true)(struct!.request), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryTableDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryTableDefinition | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._hasSearchBar !== undefined) { - hasAnyValues = true; - internalValueResult.hasSearchBar = this._hasSearchBar; - } - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.aggregation = this._aggregation; } - if (this._customLink?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; + internalValueResult.facet = this._facet; } - if (this._request?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryTableDefinition | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._hasSearchBar = undefined; - this._liveSpan = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._request.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._hasSearchBar = value.hasSearchBar; - this._liveSpan = value.liveSpan; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._request.internalValue = value.request; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // has_search_bar - computed: false, optional: true, required: false - private _hasSearchBar?: string; - public get hasSearchBar() { - return this.getStringAttribute('has_search_bar'); - } - public set hasSearchBar(value: string) { - this._hasSearchBar = value; - } - public resetHasSearchBar() { - this._hasSearchBar = undefined; - } - // Temporarily expose input value. Use with caution. - public get hasSearchBarInput() { - return this._hasSearchBar; - } - - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLiveSpan() { - this._liveSpan = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; + public get aggregationInput() { + return this._aggregation; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set title(value: string) { - this._title = value; + public set facet(value: string) { + this._facet = value; } - public resetTitle() { - this._title = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get facetInput() { + return this._facet; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set titleAlign(value: string) { - this._titleAlign = value; + public set interval(value: number) { + this._interval = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get intervalInput() { + return this._interval; } +} - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; - } - public resetTitleSize() { - this._titleSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; - } +export class DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetQueryTableDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; - } - public putCustomLink(value: DashboardWidgetQueryTableDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; - } - public resetCustomLink() { - this._customLink.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetQueryTableDefinitionRequestList(this, "request", false); - public get request() { - return this._request; - } - public putRequest(value: DashboardWidgetQueryTableDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; - } - public resetRequest() { - this._request.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionCustomLink { +export interface DashboardWidgetQueryTableDefinitionRequestRumQuery { /** - * The flag for toggling context menu link visibility. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly index: string; /** - * The label for the custom link URL. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly label?: string; + readonly searchQuery?: string; /** - * The URL of the custom link. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly link?: string; + readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly overrideLabel?: string; + readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionCustomLinkToTerraform(struct?: DashboardWidgetQueryValueDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryValueDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.index = this._index; } - if (this._label !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.searchQuery = this._searchQuery; } - if (this._link !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._overrideLabel !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); - } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetIsHidden() { - this._isHidden = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get indexInput() { + return this._index; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set label(value: string) { - this._label = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLabel() { - this._label = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get searchQueryInput() { + return this._searchQuery; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set link(value: string) { - this._link = value; + public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestRumQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetLink() { - this._link = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryTableDefinitionRequestRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get groupByInput() { + return this._groupBy.internalValue; } -} -export class DashboardWidgetQueryValueDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionCustomLink[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionCustomLinkOutputReference { - return new DashboardWidgetQueryValueDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery { +export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery { /** * The aggregation method. * @@ -3523,7 +2772,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3535,7 +2784,7 @@ export function dashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryTo } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3546,7 +2795,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutpu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -3564,7 +2813,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -3624,7 +2873,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutpu return this._interval; } } -export interface DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery { +export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery { /** * The aggregation method. * @@ -3645,7 +2894,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQu readonly order: string; } -export function dashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3657,7 +2906,7 @@ export function dashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQue } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3668,7 +2917,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -3686,7 +2935,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryO return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -3743,7 +2992,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryO return this._order; } } -export interface DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy { +export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy { /** * The facet name. * @@ -3761,10 +3010,10 @@ export interface DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery; } -export function dashboardWidgetQueryValueDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3772,11 +3021,11 @@ export function dashboardWidgetQueryValueDefinitionRequestApmQueryGroupByToTerra return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -3790,7 +3039,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputRefe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -3811,7 +3060,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputRefe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -3865,11 +3114,11 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputRefe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -3881,8 +3130,8 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputRefe } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -3896,11 +3145,11 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByList exten /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute { +export interface DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute { /** * The aggregation method. * @@ -3921,7 +3170,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3933,7 +3182,7 @@ export function dashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeTo } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -3947,7 +3196,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -3968,7 +3217,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -4035,8 +3284,8 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutpu } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4050,11 +3299,11 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestApmQuery { +export interface DashboardWidgetQueryTableDefinitionRequestSecurityQuery { /** * The name of the index to query. * @@ -4072,22 +3321,22 @@ export interface DashboardWidgetQueryValueDefinitionRequestApmQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery; + readonly computeQuery?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestApmQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputReference | DashboardWidgetQueryTableDefinitionRequestSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4095,13 +3344,13 @@ export function dashboardWidgetQueryValueDefinitionRequestApmQueryToTerraform(st return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4112,7 +3361,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequestSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -4138,7 +3387,7 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference e return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequestSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -4187,11 +3436,11 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference e } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -4203,11 +3452,11 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference e } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -4219,11 +3468,11 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference e } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetQueryTableDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -4234,235 +3483,316 @@ export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference e return this._multiCompute.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery { +export interface DashboardWidgetQueryTableDefinitionRequest { /** - * The aggregation method. + * The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly aggregation: string; + readonly aggregator?: string; /** - * The facet name. + * The alias for the column name (defaults to metric name). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly facet?: string; + readonly alias?: string; /** - * Define the time interval in seconds. + * A list of display modes for each table cell. List items one of `number`, `bar`. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly interval?: number; -} - -export function dashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), - } -} - -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - + readonly cellDisplayMode?: string[]; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing + * The number of lines to show in the table. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} -export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery { + readonly limit?: number; /** - * The aggregation method. + * The sort order for the rows. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly aggregation: string; + readonly order?: string; /** - * The facet name. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly facet?: string; + readonly q?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly order: string; + readonly apmQuery?: DashboardWidgetQueryTableDefinitionRequestApmQuery; + /** + * apm_stats_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_stats_query Dashboard#apm_stats_query} + */ + readonly apmStatsQuery?: DashboardWidgetQueryTableDefinitionRequestApmStatsQuery; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetQueryTableDefinitionRequestConditionalFormats[] | cdktf.IResolvable; + /** + * formula block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} + */ + readonly formula?: DashboardWidgetQueryTableDefinitionRequestFormula[] | cdktf.IResolvable; + /** + * log_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} + */ + readonly logQuery?: DashboardWidgetQueryTableDefinitionRequestLogQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetQueryTableDefinitionRequestProcessQuery; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query?: DashboardWidgetQueryTableDefinitionRequestQuery[] | cdktf.IResolvable; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetQueryTableDefinitionRequestRumQuery; + /** + * security_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + */ + readonly securityQuery?: DashboardWidgetQueryTableDefinitionRequestSecurityQuery; } -export function dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery): any { +export function dashboardWidgetQueryTableDefinitionRequestToTerraform(struct?: DashboardWidgetQueryTableDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.cellDisplayMode), + limit: cdktf.numberToTerraform(struct!.limit), order: cdktf.stringToTerraform(struct!.order), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetQueryTableDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + apm_stats_query: dashboardWidgetQueryTableDefinitionRequestApmStatsQueryToTerraform(struct!.apmStatsQuery), + conditional_formats: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + formula: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetQueryTableDefinitionRequestLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetQueryTableDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetQueryTableDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetQueryTableDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.alias = this._alias; + } + if (this._cellDisplayMode !== undefined) { + hasAnyValues = true; + internalValueResult.cellDisplayMode = this._cellDisplayMode; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; } if (this._order !== undefined) { hasAnyValues = true; internalValueResult.order = this._order; } + if (this._q !== undefined) { + hasAnyValues = true; + internalValueResult.q = this._q; + } + if (this._apmQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.apmQuery = this._apmQuery?.internalValue; + } + if (this._apmStatsQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.apmStatsQuery = this._apmStatsQuery?.internalValue; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._formula?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.formula = this._formula?.internalValue; + } + if (this._logQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; + this.resolvableValue = undefined; + this._aggregator = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._limit = undefined; this._order = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._apmStatsQuery.internalValue = undefined; + this._conditionalFormats.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; + this.resolvableValue = undefined; + this._aggregator = value.aggregator; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._limit = value.limit; this._order = value.order; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._apmStatsQuery.internalValue = value.apmStatsQuery; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set facet(value: string) { - this._facet = value; + public set alias(value: string) { + this._alias = value; } - public resetFacet() { - this._facet = undefined; + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get aliasInput() { + return this._alias; } - // order - computed: false, optional: false, required: true + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string[]; + public get cellDisplayMode() { + return this.getListAttribute('cell_display_mode'); + } + public set cellDisplayMode(value: string[]) { + this._cellDisplayMode = value; + } + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; + } + // Temporarily expose input value. Use with caution. + public get cellDisplayModeInput() { + return this._cellDisplayMode; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // order - computed: false, optional: true, required: false private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -4470,305 +3800,177 @@ export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuer public set order(value: string) { this._order = value; } + public resetOrder() { + this._order = undefined; + } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } -} -export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery; -} -export function dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } -} - -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public set q(value: string) { + this._q = value; } - - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + public resetQ() { + this._q = undefined; } - - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // Temporarily expose input value. Use with caution. + public get qInput() { + return this._q; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetQueryTableDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set facet(value: string) { - this._facet = value; + public putApmQuery(value: DashboardWidgetQueryTableDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // apm_stats_query - computed: false, optional: true, required: false + private _apmStatsQuery = new DashboardWidgetQueryTableDefinitionRequestApmStatsQueryOutputReference(this, "apm_stats_query"); + public get apmStatsQuery() { + return this._apmStatsQuery; } - public set limit(value: number) { - this._limit = value; + public putApmStatsQuery(value: DashboardWidgetQueryTableDefinitionRequestApmStatsQuery) { + this._apmStatsQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetApmStatsQuery() { + this._apmStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get apmStatsQueryInput() { + return this._apmStatsQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetQueryTableDefinitionRequestConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; } - public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putConditionalFormats(value: DashboardWidgetQueryTableDefinitionRequestConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } -} - -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetQueryTableDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putFormula(value: DashboardWidgetQueryTableDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; } -} -export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Define the time interval in seconds. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} - */ - readonly interval?: number; -} - -export function dashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + public resetFormula() { + this._formula.internalValue = undefined; } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + // Temporarily expose input value. Use with caution. + public get formulaInput() { + return this._formula.internalValue; } -} - -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetQueryTableDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; + public putLogQuery(value: DashboardWidgetQueryTableDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get logQueryInput() { + return this._logQuery.internalValue; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetQueryTableDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetQueryTableDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetQueryTableDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public set aggregation(value: string) { - this._aggregation = value; + public putQuery(value: DashboardWidgetQueryTableDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; + } + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get queryInput() { + return this._query.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetQueryTableDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public set facet(value: string) { - this._facet = value; + public putRumQuery(value: DashboardWidgetQueryTableDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetQueryTableDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public set interval(value: number) { - this._interval = value; + public putSecurityQuery(value: DashboardWidgetQueryTableDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get securityQueryInput() { + return this._securityQuery.internalValue; } } -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetQueryTableDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryTableDefinitionRequest[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4782,58 +3984,72 @@ export class DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryTableDefinitionRequestOutputReference { + return new DashboardWidgetQueryTableDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestAuditQuery { +export interface DashboardWidgetQueryTableDefinition { /** - * The name of the index to query. + * Controls the display of the search bar. Valid values are `always`, `never`, `auto`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#has_search_bar Dashboard#has_search_bar} */ - readonly index: string; + readonly hasSearchBar?: string; /** - * The search query to use. + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - readonly searchQuery?: string; + readonly liveSpan?: string; /** - * compute_query block + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery; + readonly title?: string; /** - * group_by block + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; + readonly titleAlign?: string; /** - * multi_compute block + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; + readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetQueryTableDefinitionCustomLink[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetQueryTableDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestAuditQuery): any { +export function dashboardWidgetQueryTableDefinitionToTerraform(struct?: DashboardWidgetQueryTableDefinitionOutputReference | DashboardWidgetQueryTableDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), + has_search_bar: cdktf.stringToTerraform(struct!.hasSearchBar), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetQueryTableDefinitionCustomLinkToTerraform, true)(struct!.customLink), + request: cdktf.listMapper(dashboardWidgetQueryTableDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryTableDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4844,204 +4060,216 @@ export class DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQuery | undefined { + public get internalValue(): DashboardWidgetQueryTableDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._hasSearchBar !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.hasSearchBar = this._hasSearchBar; } - if (this._searchQuery !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.liveSpan = this._liveSpan; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.title = this._title; } - if (this._groupBy?.internalValue !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.titleAlign = this._titleAlign; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryTableDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._hasSearchBar = undefined; + this._liveSpan = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._hasSearchBar = value.hasSearchBar; + this._liveSpan = value.liveSpan; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._request.internalValue = value.request; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // has_search_bar - computed: false, optional: true, required: false + private _hasSearchBar?: string; + public get hasSearchBar() { + return this.getStringAttribute('has_search_bar'); } - public set index(value: string) { - this._index = value; + public set hasSearchBar(value: string) { + this._hasSearchBar = value; + } + public resetHasSearchBar() { + this._hasSearchBar = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get hasSearchBarInput() { + return this._hasSearchBar; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set liveSpan(value: string) { + this._liveSpan = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetLiveSpan() { + this._liveSpan = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get liveSpanInput() { + return this._liveSpan; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set title(value: string) { + this._title = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get titleInput() { + return this._title; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get titleAlignInput() { + return this._titleAlign; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get titleSizeInput() { + return this._titleSize; + } + + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetQueryTableDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetQueryTableDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetQueryTableDefinitionRequestList(this, "request", false); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetQueryTableDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; +export interface DashboardWidgetQueryValueDefinitionCustomLink { /** - * The metric from the request to correlate with this conditional format. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly metric?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly palette: string; + readonly label?: string; /** - * Defines the displayed timeframe. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly timeframe?: string; + readonly link?: string; /** - * A value for the comparator. + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly value: number; + readonly overrideLabel?: string; } -export function dashboardWidgetQueryValueDefinitionRequestConditionalFormatsToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionCustomLinkToTerraform(struct?: DashboardWidgetQueryValueDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5055,64 +4283,39 @@ export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputR super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionCustomLink | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.isHidden = this._isHidden; } - if (this._palette !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.label = this._label; } - if (this._timeframe !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.link = this._link; } - if (this._value !== undefined) { + if (this._overrideLabel !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -5121,156 +4324,80 @@ export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputR else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); - } - public set customBgColor(value: string) { - this._customBgColor = value; - } - public resetCustomBgColor() { - this._customBgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; - } - - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); - } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; } - public resetHideValue() { - this._hideValue = undefined; + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get isHiddenInput() { + return this._isHidden; } - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set imageUrl(value: string) { - this._imageUrl = value; + public set label(value: string) { + this._label = value; } - public resetImageUrl() { - this._imageUrl = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get labelInput() { + return this._label; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + public set link(value: string) { + this._link = value; } - public set palette(value: string) { - this._palette = value; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get linkInput() { + return this._link; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; - } - public resetTimeframe() { - this._timeframe = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public set value(value: number) { - this._value = value; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get overrideLabelInput() { + return this._overrideLabel; } } -export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetQueryValueDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionCustomLink[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5284,375 +4411,186 @@ export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsList ex /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryValueDefinitionCustomLinkOutputReference { + return new DashboardWidgetQueryValueDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; +export interface DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery { /** - * The color palette to apply to the background, same values available as palette. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly customBgColor?: string; + readonly aggregation: string; /** - * The color palette to apply to the foreground, same values available as palette. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly customFgColor?: string; + readonly facet?: string; /** - * Setting this to True hides values. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; - /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; - /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} - */ - readonly palette: string; - /** - * Defines the displayed timeframe. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} - */ - readonly timeframe?: string; - /** - * A value for the comparator. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} - */ - readonly value: number; + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._palette !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.aggregation = this._aggregation; } - if (this._timeframe !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.facet = this._facet; } - if (this._value !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set comparator(value: string) { - this._comparator = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; + public get aggregationInput() { + return this._aggregation; } - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set customBgColor(value: string) { - this._customBgColor = value; + public set facet(value: string) { + this._facet = value; } - public resetCustomBgColor() { - this._customBgColor = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; + public get facetInput() { + return this._facet; } - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set customFgColor(value: string) { - this._customFgColor = value; + public set interval(value: number) { + this._interval = value; } - public resetCustomFgColor() { - this._customFgColor = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; + public get intervalInput() { + return this._interval; } +} +export interface DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); - } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; - } - public resetHideValue() { - this._hideValue = undefined; +export function dashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } +} - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); - } - public set imageUrl(value: string) { - this._imageUrl = value; - } - public resetImageUrl() { - this._imageUrl = undefined; - } - // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; - } +export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); - } - public set palette(value: string) { - this._palette = value; - } - // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; - } - - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; - } - public resetTimeframe() { - this._timeframe = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; - } - - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); - } - public set value(value: number) { - this._value = value; - } - // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; - } -} - -export class DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryValueDefinitionRequestFormulaLimit { - /** - * The number of results to return - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} - */ - readonly count?: number; - /** - * The direction of the sort. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order?: string; -} - -export function dashboardWidgetQueryValueDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReference | DashboardWidgetQueryValueDefinitionRequestFormulaLimit): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; } if (this._order !== undefined) { hasAnyValues = true; @@ -5661,36 +4599,51 @@ export class DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReferen return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; + this._aggregation = undefined; + this._facet = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; + this._aggregation = value.aggregation; + this._facet = value.facet; this._order = value.order; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set count(value: number) { - this._count = value; + public set aggregation(value: string) { + this._aggregation = value; } - public resetCount() { - this._count = undefined; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false + // order - computed: false, optional: false, required: true private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -5698,62 +4651,45 @@ export class DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReferen public set order(value: string) { this._order = value; } - public resetOrder() { - this._order = undefined; - } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetQueryValueDefinitionRequestFormula { - /** - * An expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} - */ - readonly alias?: string; - /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} - */ - readonly cellDisplayMode?: string; +export interface DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy { /** - * A string expression built from queries, formulas, and functions. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly formulaExpression: string; + readonly facet?: string; /** - * conditional_formats block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly conditionalFormats?: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly limit?: number; /** - * limit block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly limit?: DashboardWidgetQueryValueDefinitionRequestFormulaLimit; + readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetQueryValueDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetQueryValueDefinitionRequestFormulaLimitToTerraform(struct!.limit), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5767,44 +4703,34 @@ export class DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference ex super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestFormula | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { - hasAnyValues = true; - internalValueResult.alias = this._alias; - } - if (this._cellDisplayMode !== undefined) { - hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; - } - if (this._formulaExpression !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.facet = this._facet; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.limit = this._limit; } - if (this._limit?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -5813,94 +4739,63 @@ export class DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference ex else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set alias(value: string) { - this._alias = value; + public set facet(value: string) { + this._facet = value; } - public resetAlias() { - this._alias = undefined; - } - // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; - } - - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); - } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; - } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; - } - // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; - } - - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); - } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get facetInput() { + return this._facet; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putConditionalFormats(value: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get limitInput() { + return this._limit; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putLimit(value: DashboardWidgetQueryValueDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetQueryValueDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestFormula[] | cdktf.IResolvable +export class DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5914,11 +4809,11 @@ export class DashboardWidgetQueryValueDefinitionRequestFormulaList extends cdktf /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery { +export interface DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute { /** * The aggregation method. * @@ -5939,7 +4834,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5951,18 +4846,24 @@ export function dashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryTo } } -export class DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -5980,15 +4881,21 @@ export class DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -6040,40 +4947,74 @@ export class DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutpu return this._interval; } } -export interface DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery { + +export class DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestApmQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly aggregation: string; + readonly index: string; /** - * The facet name. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly facet?: string; + readonly searchQuery?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly order: string; + readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6084,170 +5025,218 @@ export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._facet !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.searchQuery = this._searchQuery; } - if (this._order !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestApmQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryValueDefinitionRequestApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy { +export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery { /** - * The facet name. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly facet?: string; + readonly aggregation: string; /** - * The maximum number of items in the group. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly limit?: number; + readonly facet?: string; /** - * sort_query block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery; + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.aggregation = this._aggregation; } - if (this._limit !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.facet = this._facet; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; + this._aggregation = undefined; this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; + this._aggregation = value.aggregation; this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._interval = value.interval; } } + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + // facet - computed: false, optional: true, required: false private _facet?: string; public get facet() { @@ -6264,59 +5253,23 @@ export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputRefe return this._facet; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; - } -} - -export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute { +export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery { /** * The aggregation method. * @@ -6330,14 +5283,14 @@ export interface DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute */ readonly facet?: string; /** - * Define the time interval in seconds. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order: string; } -export function dashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -6345,28 +5298,22 @@ export function dashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeTo return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -6377,31 +5324,25 @@ export class DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutpu hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; - this._interval = value.interval; + this._order = value.order; } } @@ -6434,456 +5375,378 @@ export class DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutpu return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetInterval() { - this._interval = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get orderInput() { + return this._order; } } - -export class DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryValueDefinitionRequestLogQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; - /** - * compute_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} - */ - readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery; + readonly facet?: string; /** - * group_by block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly limit?: number; /** - * multi_compute block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery; } -export function dashboardWidgetQueryValueDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestLogQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._groupBy?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.limit = this._limit; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set facet(value: string) { + this._facet = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get facetInput() { + return this._facet; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get limitInput() { + return this._limit; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } -} -export interface DashboardWidgetQueryValueDefinitionRequestProcessQuery { + /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * @param index the index of the item to return */ - readonly filterBy?: string[]; + public get(index: number): DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute { /** - * The max number of items in the filter list. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly limit?: number; + readonly aggregation: string; /** - * Your chosen metric. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly metric: string; + readonly facet?: string; /** - * Your chosen search term. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly searchBy?: string; + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestProcessQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestProcessQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } - if (this._metric !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.facet = this._facet; } - if (this._searchBy !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetFilterBy() { - this._filterBy = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get aggregationInput() { + return this._aggregation; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + public set facet(value: string) { + this._facet = value; } - public set metric(value: string) { - this._metric = value; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get facetInput() { + return this._facet; } - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set searchBy(value: string) { - this._searchBy = value; + public set interval(value: number) { + this._interval = value; } - public resetSearchBy() { - this._searchBy = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; + +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable + /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly name: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * @param index the index of the item to return */ - readonly operationName: string; + public get(index: number): DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestAuditQuery { /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly primaryTagName?: string; + readonly index: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly primaryTagValue?: string; + readonly searchQuery?: string; /** - * APM resource. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly resourceName: string; + readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery; /** - * APM service. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly service: string; + readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly stat: string; + readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestAuditQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6894,567 +5757,526 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestAuditQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.index = this._index; } - if (this._primaryTagValue !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.searchQuery = this._searchQuery; } - if (this._resourceName !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._service !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._stat !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestAuditQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); - } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetIsUpstream() { - this._isUpstream = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get indexInput() { + return this._index; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + public set searchQuery(value: string) { + this._searchQuery = value; } - public set operationName(value: string) { - this._operationName = value; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get searchQueryInput() { + return this._searchQuery; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; - } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public set resourceName(value: string) { - this._resourceName = value; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get groupByInput() { + return this._groupBy.internalValue; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public set stat(value: string) { - this._stat = value; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; +export interface DashboardWidgetQueryValueDefinitionRequestConditionalFormats { /** - * APM Environment. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly env: string; + readonly comparator: string; /** - * Array of fields to group results by. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly groupBy?: string[]; + readonly customBgColor?: string; /** - * The name of query for use in formulas. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly name: string; + readonly customFgColor?: string; /** - * Name of operation on service. + * Setting this to True hides values. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly operationName?: string; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * Displays an image as the background. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} */ - readonly primaryTagName?: string; + readonly imageUrl?: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The metric from the request to correlate with this conditional format. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly primaryTagValue?: string; + readonly metric?: string; /** - * APM resource. + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} */ - readonly resourceName?: string; + readonly palette: string; /** - * APM service. + * Defines the displayed timeframe. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} */ - readonly service: string; + readonly timeframe?: string; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * A value for the comparator. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} */ - readonly stat: string; + readonly value: number; } -export function dashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestConditionalFormatsToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.env = this._env; + internalValueResult.comparator = this._comparator; } - if (this._groupBy !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; + internalValueResult.customBgColor = this._customBgColor; } - if (this._name !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.customFgColor = this._customFgColor; } - if (this._operationName !== undefined) { + if (this._hideValue !== undefined) { hasAnyValues = true; - internalValueResult.operationName = this._operationName; + internalValueResult.hideValue = this._hideValue; } - if (this._primaryTagName !== undefined) { + if (this._imageUrl !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.imageUrl = this._imageUrl; } - if (this._primaryTagValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.metric = this._metric; } - if (this._resourceName !== undefined) { + if (this._palette !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.palette = this._palette; } - if (this._service !== undefined) { + if (this._timeframe !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.timeframe = this._timeframe; } - if (this._stat !== undefined) { + if (this._value !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set dataSource(value: string) { - this._dataSource = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get comparatorInput() { + return this._comparator; } - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); } - public set env(value: string) { - this._env = value; + public set customBgColor(value: string) { + this._customBgColor = value; + } + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get customBgColorInput() { + return this._customBgColor; } - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set groupBy(value: string[]) { - this._groupBy = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - public resetGroupBy() { - this._groupBy = undefined; + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; + public get customFgColorInput() { + return this._customFgColor; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public set name(value: string) { - this._name = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; + } + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get hideValueInput() { + return this._hideValue; } - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); } - public set operationName(value: string) { - this._operationName = value; + public set imageUrl(value: string) { + this._imageUrl = value; } - public resetOperationName() { - this._operationName = undefined; + public resetImageUrl() { + this._imageUrl = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get imageUrlInput() { + return this._imageUrl; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set metric(value: string) { + this._metric = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get metricInput() { + return this._metric; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public set palette(value: string) { + this._palette = value; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get paletteInput() { + return this._palette; } - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); } - public set resourceName(value: string) { - this._resourceName = value; + public set timeframe(value: string) { + this._timeframe = value; } - public resetResourceName() { - this._resourceName = undefined; + public resetTimeframe() { + this._timeframe = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get timeframeInput() { + return this._timeframe; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); } - public set service(value: string) { - this._service = value; + public set value(value: number) { + this._value = value; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get valueInput() { + return this._value; } +} - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; +export class DashboardWidgetQueryValueDefinitionRequestConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestConditionalFormats[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly aggregation: string; + readonly comparator: string; /** - * A time interval in milliseconds. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly interval?: number; + readonly customBgColor?: string; /** - * The measurable attribute to compute. + * The color palette to apply to the foreground, same values available as palette. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} + */ + readonly customFgColor?: string; + /** + * Setting this to True hides values. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + */ + readonly hideValue?: boolean | cdktf.IResolvable; + /** + * Displays an image as the background. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + */ + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -7468,34 +6290,64 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.comparator = this._comparator; } - if (this._interval !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.customBgColor = this._customBgColor; + } + if (this._customFgColor !== undefined) { + hasAnyValues = true; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -7504,111 +6356,200 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOut else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get comparatorInput() { + return this._comparator; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); } - public set interval(value: number) { - this._interval = value; + public set customBgColor(value: string) { + this._customBgColor = value; } - public resetInterval() { - this._interval = undefined; + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get customBgColorInput() { + return this._customBgColor; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set metric(value: string) { - this._metric = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - public resetMetric() { - this._metric = undefined; + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get customFgColorInput() { + return this._customFgColor; } -} - -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } -} -export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort { + public resetHideValue() { + this._hideValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get hideValueInput() { + return this._hideValue; + } + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } + + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); + } + public set timeframe(value: string) { + this._timeframe = value; + } + public resetTimeframe() { + this._timeframe = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; + } +} + +export class DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable + /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly aggregation: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The metric used for sorting group by results. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestFormulaLimit { + /** + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly metric?: string; + readonly count?: number; /** - * Direction of sort. Valid values are `asc`, `desc`. + * The direction of the sort. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ readonly order?: string; } -export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort): any { +export function dashboardWidgetQueryValueDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReference | DashboardWidgetQueryValueDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), + count: cdktf.numberToTerraform(struct!.count), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7619,16 +6560,12 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySor super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._metric !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.count = this._count; } if (this._order !== undefined) { hasAnyValues = true; @@ -7637,48 +6574,33 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySor return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._metric = undefined; + this._count = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._metric = value.metric; + this._count = value.count; this._order = value.order; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set metric(value: string) { - this._metric = value; + public set count(value: number) { + this._count = value; } - public resetMetric() { - this._metric = undefined; + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get countInput() { + return this._count; } // order - computed: false, optional: true, required: false @@ -7697,40 +6619,54 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySor return this._order; } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetQueryValueDefinitionRequestFormula { /** - * The event facet. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly facet: string; + readonly alias?: string; /** - * The number of groups to return. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly limit?: number; + readonly cellDisplayMode?: string; /** - * sort block + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly sort?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort; + readonly formulaExpression: string; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + /** + * limit block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: DashboardWidgetQueryValueDefinitionRequestFormulaLimit; } -export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetQueryValueDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -7744,34 +6680,44 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestFormula | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.alias = this._alias; } - if (this._limit !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._sort?.internalValue !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.formulaExpression = this._formulaExpression; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._limit?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sort.internalValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -7780,60 +6726,94 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOut else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sort.internalValue = value.sort; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set facet(value: string) { - this._facet = value; + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get aliasInput() { + return this._alias; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set limit(value: number) { - this._limit = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetLimit() { - this._limit = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public putSort(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set formulaExpression(value: string) { + this._formulaExpression = value; } - public resetSort() { - this._sort.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get formulaExpressionInput() { + return this._formulaExpression; + } + + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; + } + public putConditionalFormats(value: DashboardWidgetQueryValueDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; + } + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; + } + + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetQueryValueDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; + } + public putLimit(value: DashboardWidgetQueryValueDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; + } + public resetLimit() { + this._limit.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit.internalValue; } } -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetQueryValueDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestFormula[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -7847,30 +6827,44 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch { +export interface DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery { /** - * The events search string. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly query: string; + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch): any { +export function dashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7881,95 +6875,118 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutp super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._query !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._query = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set query(value: string) { - this._query = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQuery { - /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * An array of index names to query in the stream. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} - */ - readonly indexes?: string[]; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; +export interface DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery { /** - * compute block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly compute: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * search block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly search?: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch; + readonly order: string; } -export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), - name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7980,831 +6997,613 @@ export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputRefe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.aggregation = this._aggregation; } - if (this._indexes !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._compute?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; - } - if (this._groupBy?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._search?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._indexes = undefined; - this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._indexes = value.indexes; - this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); - } - public set indexes(value: string[]) { - this._indexes = value; - } - public resetIndexes() { - this._indexes = undefined; - } - // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public putCompute(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; - } - public putSearch(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetSearch() { - this._search.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy { /** - * The data source for metrics queries. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly dataSource?: string; + readonly facet?: string; /** - * The name of the query for use in formulas. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly name: string; + readonly limit?: number; /** - * The metrics query definition. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly query: string; + readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery; } -export function dashboardWidgetQueryValueDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.facet = this._facet; } - if (this._name !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.limit = this._limit; } - if (this._query !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set aggregator(value: string) { - this._aggregator = value; + public set facet(value: string) { + this._facet = value; } - public resetAggregator() { - this._aggregator = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get facetInput() { + return this._facet; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public resetDataSource() { - this._dataSource = undefined; + public set limit(value: number) { + this._limit = value; } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get limitInput() { + return this._limit; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set query(value: string) { - this._query = value; + public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} - */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; - /** - * The number of hits to return. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; + +export class DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable + /** - * The process metric name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly metric: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param index the index of the item to return */ - readonly name: string; + public get(index: number): DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute { /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly sort?: string; + readonly aggregation: string; /** - * An array of tags to filter by. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly tagFilters?: string[]; + readonly facet?: string; /** - * The text to use as a filter. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly textFilter?: string; + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort; + internalValueResult.aggregation = this._aggregation; } - if (this._tagFilters !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; + internalValueResult.facet = this._facet; } - if (this._textFilter !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; - this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; - this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetAggregator() { - this._aggregator = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get aggregationInput() { + return this._aggregation; } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set dataSource(value: string) { - this._dataSource = value; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get facetInput() { + return this._facet; } - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; + public set interval(value: number) { + this._interval = value; } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get intervalInput() { + return this._interval; } +} - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); - } - public set sort(value: string) { - this._sort = value; - } - public resetSort() { - this._sort = undefined; - } - // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; - } +export class DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); - } - public set tagFilters(value: string[]) { - this._tagFilters = value; - } - public resetTagFilters() { - this._tagFilters = undefined; - } - // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); - } - public set textFilter(value: string) { - this._textFilter = value; - } - public resetTextFilter() { - this._textFilter = undefined; - } - // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestQuery { +export interface DashboardWidgetQueryValueDefinitionRequestLogQuery { /** - * apm_dependency_stats_query block + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly apmDependencyStatsQuery?: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery; + readonly index: string; /** - * apm_resource_stats_query block + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly apmResourceStatsQuery?: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery; + readonly searchQuery?: string; /** - * event_query block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly eventQuery?: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery; + readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery; /** - * metric_query block + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly metricQuery?: DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery; + readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; /** - * process_query block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly processQuery?: DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery; + readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionRequestQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestLogQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetQueryValueDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetQueryValueDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetQueryValueDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryValueDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQuery | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; + internalValueResult.index = this._index; } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; + internalValueResult.searchQuery = this._searchQuery; } - if (this._eventQuery?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._processQuery?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; + public get indexInput() { + return this._index; } - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public putApmResourceStatsQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; + public get searchQueryInput() { + return this._searchQuery; } - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putEventQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetQueryValueDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryValueDefinitionRequestLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putMetricQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetQueryValueDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putProcessQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } - -export class DashboardWidgetQueryValueDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestQuery[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - +export interface DashboardWidgetQueryValueDefinitionRequestProcessQuery { /** - * @param index the index of the item to return + * A list of processes. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestQueryOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery { + readonly filterBy?: string[]; /** - * The aggregation method. + * The max number of items in the filter list. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly aggregation: string; + readonly limit?: number; /** - * The facet name. + * Your chosen metric. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly facet?: string; + readonly metric: string; /** - * Define the time interval in seconds. + * Your chosen search term. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} */ - readonly interval?: number; + readonly searchBy?: string; } -export function dashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestProcessQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8815,695 +7614,2106 @@ export class DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutpu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.filterBy = this._filterBy; } - if (this._facet !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.limit = this._limit; } - if (this._interval !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._filterBy = undefined; + this._limit = undefined; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._filterBy = value.filterBy; + this._limit = value.limit; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set aggregation(value: string) { - this._aggregation = value; + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get filterByInput() { + return this._filterBy; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set facet(value: string) { - this._facet = value; + public set limit(value: number) { + this._limit = value; } - public resetFacet() { - this._facet = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get limitInput() { + return this._limit; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set interval(value: number) { - this._interval = value; + public set metric(value: string) { + this._metric = value; } - public resetInterval() { - this._interval = undefined; + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery { +export interface DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery { /** - * The aggregation method. + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregation: string; + readonly dataSource: string; /** - * The facet name. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly facet?: string; + readonly env: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly order: string; -} - -export function dashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - + readonly isUpstream?: boolean | cdktf.IResolvable; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; - } - // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; - } -} -export interface DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy { + readonly name: string; /** - * The facet name. + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly facet?: string; + readonly operationName: string; /** - * The maximum number of items in the group. + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly limit?: number; + readonly primaryTagName?: string; /** - * sort_query block + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery; + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetQueryValueDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetFacet() { - this._facet = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetLimit() { - this._limit = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get envInput() { + return this._env; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); } - public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get isUpstreamInput() { + return this._isUpstream; } -} -export class DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } + + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute { +export interface DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery { /** - * The aggregation method. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregation: string; + readonly dataSource: string; /** - * The facet name. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly facet?: string; + readonly env: string; /** - * Define the time interval in seconds. + * Array of fields to group results by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly interval?: number; + readonly groupBy?: string[]; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Name of operation on service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + */ + readonly operationName?: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._facet !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.env = this._env; } - if (this._interval !== undefined) { + if (this._groupBy !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + internalValueResult.groupBy = this._groupBy; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; } - } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._dataSource = undefined; + this._env = undefined; + this._groupBy = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._dataSource = value.dataSource; + this._env = value.env; + this._groupBy = value.groupBy; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; + } + } + + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; + } + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); + } + public set env(value: string) { + this._env = value; + } + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; + } + + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } + + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute { + /** + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * A time interval in milliseconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; + /** + * The measurable attribute to compute. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; + this._metric = value.metric; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort { + /** + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The metric used for sorting group by results. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * Direction of sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order?: string; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + metric: cdktf.stringToTerraform(struct!.metric), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._metric = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._metric = value.metric; + this._order = value.order; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + public resetOrder() { + this._order = undefined; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy { + /** + * The event facet. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet: string; + /** + * The number of groups to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sort?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; + } + } + + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; + } + public putSort(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; + } + public resetSort() { + this._sort.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortInput() { + return this._sort.internalValue; + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch { + /** + * The events search string. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + query: cdktf.stringToTerraform(struct!.query), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._query = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._query = value.query; + } + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; + } + // Temporarily expose input value. Use with caution. + public get queryInput() { + return this._query; + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryEventQuery { + /** + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + */ + readonly dataSource: string; + /** + * An array of index names to query in the stream. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + */ + readonly indexes?: string[]; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** + * compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + */ + readonly compute: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryEventQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryEventQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._dataSource !== undefined) { + hasAnyValues = true; + internalValueResult.dataSource = this._dataSource; + } + if (this._indexes !== undefined) { + hasAnyValues = true; + internalValueResult.indexes = this._indexes; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; + } + } + + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; + } + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); + } + public set indexes(value: string[]) { + this._indexes = value; + } + public resetIndexes() { + this._indexes = undefined; + } + // Temporarily expose input value. Use with caution. + public get indexesInput() { + return this._indexes; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; + } + public putCompute(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; + } + public putSearch(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; + } + public resetSearch() { + this._search.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchInput() { + return this._search.internalValue; + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery { + /** + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} + */ + readonly aggregator?: string; + /** + * The data source for metrics queries. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + */ + readonly dataSource?: string; + /** + * The name of the query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregator !== undefined) { + hasAnyValues = true; + internalValueResult.aggregator = this._aggregator; + } + if (this._dataSource !== undefined) { + hasAnyValues = true; + internalValueResult.dataSource = this._dataSource; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; + } + } + + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); + } + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; + } + // Temporarily expose input value. Use with caution. + public get aggregatorInput() { + return this._aggregator; + } + + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; + } + public resetDataSource() { + this._dataSource = undefined; + } + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; + } + // Temporarily expose input value. Use with caution. + public get queryInput() { + return this._query; + } +} +export interface DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery { + /** + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} + */ + readonly aggregator?: string; + /** + * The data source for process queries. Valid values are `process`, `container`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + */ + readonly dataSource: string; + /** + * Whether to normalize the CPU percentages. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + */ + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + /** + * The number of hits to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * The process metric name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The direction of the sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: string; + /** + * An array of tags to filter by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + */ + readonly tagFilters?: string[]; + /** + * The text to use as a filter. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + */ + readonly textFilter?: string; +} + +export function dashboardWidgetQueryValueDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), + } +} - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); +export class DashboardWidgetQueryValueDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public set aggregation(value: string) { - this._aggregation = value; + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregator !== undefined) { + hasAnyValues = true; + internalValueResult.aggregator = this._aggregator; + } + if (this._dataSource !== undefined) { + hasAnyValues = true; + internalValueResult.dataSource = this._dataSource; + } + if (this._isNormalizedCpu !== undefined) { + hasAnyValues = true; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; + } + } + + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); + } + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetFacet() { - this._facet = undefined; + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; + } + + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); + } + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; + } + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set interval(value: number) { - this._interval = value; + public set limit(value: number) { + this._limit = value; } - public resetInterval() { - this._interval = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get limitInput() { + return this._limit; } -} -export class DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); + } + public set sort(value: string) { + this._sort = value; + } + public resetSort() { + this._sort = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortInput() { + return this._sort; + } + + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); + } + public set tagFilters(value: string[]) { + this._tagFilters = value; + } + public resetTagFilters() { + this._tagFilters = undefined; + } + // Temporarily expose input value. Use with caution. + public get tagFiltersInput() { + return this._tagFilters; + } + + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); + } + public set textFilter(value: string) { + this._textFilter = value; + } + public resetTextFilter() { + this._textFilter = undefined; + } + // Temporarily expose input value. Use with caution. + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetQueryValueDefinitionRequestRumQuery { +export interface DashboardWidgetQueryValueDefinitionRequestQuery { /** - * The name of the index to query. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly index: string; + readonly apmDependencyStatsQuery?: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery; /** - * The search query to use. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly searchQuery?: string; + readonly apmResourceStatsQuery?: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery; /** - * compute_query block + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery; + readonly eventQuery?: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery; /** - * group_by block + * metric_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} */ - readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly metricQuery?: DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery; /** - * multi_compute block + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly processQuery?: DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetQueryValueDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestRumQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + apm_dependency_stats_query: dashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetQueryValueDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetQueryValueDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetQueryValueDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestQuery | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._searchQuery !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.eventQuery = this._eventQuery?.internalValue; } - if (this._groupBy?.internalValue !== undefined) { + if (this._metricQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.metricQuery = this._metricQuery?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set index(value: string) { - this._index = value; + public putApmDependencyStatsQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; + } + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public set searchQuery(value: string) { - this._searchQuery = value; + public putApmResourceStatsQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetQueryValueDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putEventQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get eventQueryInput() { + return this._eventQuery.internalValue; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetQueryValueDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; } - public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putMetricQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get metricQueryInput() { + return this._metricQuery.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetQueryValueDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putProcessQuery(value: DashboardWidgetQueryValueDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get processQueryInput() { + return this._processQuery.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery { + +export class DashboardWidgetQueryValueDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestQuery[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestQueryOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery { /** * The aggregation method. * @@ -9524,7 +9734,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQ readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9536,7 +9746,7 @@ export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQu } } -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9547,7 +9757,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -9565,7 +9775,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -9625,7 +9835,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery return this._interval; } } -export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery { +export interface DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery { /** * The aggregation method. * @@ -9646,7 +9856,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByS readonly order: string; } -export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9658,7 +9868,7 @@ export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySo } } -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9669,7 +9879,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQ super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -9687,7 +9897,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQ return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -9744,7 +9954,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQ return this._order; } } -export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy { +export interface DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy { /** * The facet name. * @@ -9762,10 +9972,10 @@ export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery; } -export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9773,11 +9983,11 @@ export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByTo return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -9791,7 +10001,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -9812,7 +10022,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -9866,11 +10076,11 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutpu } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -9882,8 +10092,8 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutpu } } -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -9897,11 +10107,11 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute { +export interface DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute { /** * The aggregation method. * @@ -9922,7 +10132,7 @@ export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCom readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -9934,7 +10144,7 @@ export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComp } } -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -9948,7 +10158,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -9969,7 +10179,7 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -10036,8 +10246,8 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute } } -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -10051,11 +10261,11 @@ export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetQueryValueDefinitionRequestSecurityQuery { +export interface DashboardWidgetQueryValueDefinitionRequestRumQuery { /** * The name of the index to query. * @@ -10073,605 +10283,202 @@ export interface DashboardWidgetQueryValueDefinitionRequestSecurityQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery; + readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; -} - -export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestSecurityQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), - } -} - -export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; - } - if (this._groupBy?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; - } - if (this._multiCompute?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; - } - } - - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; - } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; - } - - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; - } - public resetGroupBy() { - this._groupBy.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } - - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; - } -} -export interface DashboardWidgetQueryValueDefinitionRequest { - /** - * The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetQueryValueDefinitionRequestApmQuery; - /** - * audit_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} - */ - readonly auditQuery?: DashboardWidgetQueryValueDefinitionRequestAuditQuery; - /** - * conditional_formats block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} - */ - readonly conditionalFormats?: DashboardWidgetQueryValueDefinitionRequestConditionalFormats[] | cdktf.IResolvable; - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetQueryValueDefinitionRequestFormula[] | cdktf.IResolvable; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetQueryValueDefinitionRequestLogQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetQueryValueDefinitionRequestProcessQuery; - /** - * query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query?: DashboardWidgetQueryValueDefinitionRequestQuery[] | cdktf.IResolvable; - /** - * rum_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} - */ - readonly rumQuery?: DashboardWidgetQueryValueDefinitionRequestRumQuery; - /** - * security_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} - */ - readonly securityQuery?: DashboardWidgetQueryValueDefinitionRequestSecurityQuery; + readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetQueryValueDefinitionRequestToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequest | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetQueryValueDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - audit_query: dashboardWidgetQueryValueDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), - conditional_formats: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - formula: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetQueryValueDefinitionRequestLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetQueryValueDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetQueryValueDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetQueryValueDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), +export function dashboardWidgetQueryValueDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestRumQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestRumQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetQueryValueDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._auditQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.auditQuery = this._auditQuery?.internalValue; - } - if (this._conditionalFormats?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; - } - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; + internalValueResult.index = this._index; } - if (this._processQuery?.internalValue !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.searchQuery = this._searchQuery; } - if (this._query?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregator = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._auditQuery.internalValue = undefined; - this._conditionalFormats.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregator = value.aggregator; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._auditQuery.internalValue = value.auditQuery; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetQueryValueDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // audit_query - computed: false, optional: true, required: false - private _auditQuery = new DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference(this, "audit_query"); - public get auditQuery() { - return this._auditQuery; - } - public putAuditQuery(value: DashboardWidgetQueryValueDefinitionRequestAuditQuery) { - this._auditQuery.internalValue = value; - } - public resetAuditQuery() { - this._auditQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get auditQueryInput() { - return this._auditQuery.internalValue; - } - - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetQueryValueDefinitionRequestConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; - } - public putConditionalFormats(value: DashboardWidgetQueryValueDefinitionRequestConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; - } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; - } - - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetQueryValueDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetQueryValueDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; - } - public resetFormula() { - this._formula.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetQueryValueDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetQueryValueDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetLogQuery() { - this._logQuery.internalValue = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; + public get indexInput() { + return this._index; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetQueryValueDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public putProcessQuery(value: DashboardWidgetQueryValueDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get searchQueryInput() { + return this._searchQuery; } - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetQueryValueDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putQuery(value: DashboardWidgetQueryValueDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; + public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestRumQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetQuery() { - this._query.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetQueryValueDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryValueDefinitionRequestRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putRumQuery(value: DashboardWidgetQueryValueDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; + public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putSecurityQuery(value: DashboardWidgetQueryValueDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; + public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; - } -} - -export class DashboardWidgetQueryValueDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetQueryValueDefinitionRequest[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetQueryValueDefinitionRequestOutputReference { - return new DashboardWidgetQueryValueDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis { - /** - * Always include zero or fit the axis to the data range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} - */ - readonly includeZero?: boolean | cdktf.IResolvable; - /** - * The label of the axis to display on the graph. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; +export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery { /** - * Specify the maximum value to show on the Y-axis. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly max?: string; + readonly aggregation: string; /** - * Specify the minimum value to show on the Y-axis. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly min?: string; + readonly facet?: string; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly scale?: string; + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisToTerraform(struct?: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputReference | DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis): any { +export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10682,622 +10489,784 @@ export class DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputR super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { - hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._max !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.aggregation = this._aggregation; } - if (this._min !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.facet = this._facet; } - if (this._scale !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; + public set aggregation(value: string) { + this._aggregation = value; } - public resetIncludeZero() { - this._includeZero = undefined; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; + public get facetInput() { + return this._facet; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set label(value: string) { - this._label = value; + public set interval(value: number) { + this._interval = value; } - public resetLabel() { - this._label = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get intervalInput() { + return this._interval; + } +} +export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} + +export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } } - public set max(value: string) { - this._max = value; + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetMax() { - this._max = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; + public get aggregationInput() { + return this._aggregation; } - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set min(value: string) { - this._min = value; + public set facet(value: string) { + this._facet = value; } - public resetMin() { - this._min = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; + public get facetInput() { + return this._facet; } - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); - } - public set scale(value: string) { - this._scale = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetScale() { - this._scale = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetQueryValueDefinitionTimeseriesBackground { +export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy { /** - * Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly type: string; + readonly facet?: string; /** - * yaxis block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly yaxis?: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis; + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery; } -export function dashboardWidgetQueryValueDefinitionTimeseriesBackgroundToTerraform(struct?: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundOutputReference | DashboardWidgetQueryValueDefinitionTimeseriesBackground): any { +export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - type: cdktf.stringToTerraform(struct!.type), - yaxis: dashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisToTerraform(struct!.yaxis), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetQueryValueDefinitionTimeseriesBackgroundOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinitionTimeseriesBackground | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._type !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.type = this._type; + internalValueResult.facet = this._facet; } - if (this._yaxis?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.yaxis = this._yaxis?.internalValue; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinitionTimeseriesBackground | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._type = undefined; - this._yaxis.internalValue = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._type = value.type; - this._yaxis.internalValue = value.yaxis; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // type - computed: false, optional: false, required: true - private _type?: string; - public get type() { - return this.getStringAttribute('type'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set type(value: string) { - this._type = value; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get typeInput() { - return this._type; + public get facetInput() { + return this._facet; } - // yaxis - computed: false, optional: true, required: false - private _yaxis = new DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputReference(this, "yaxis"); - public get yaxis() { - return this._yaxis; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putYaxis(value: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis) { - this._yaxis.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetYaxis() { - this._yaxis.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get yaxisInput() { - return this._yaxis.internalValue; + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export interface DashboardWidgetQueryValueDefinition { - /** - * A Boolean indicating whether to automatically scale the tile. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#autoscale Dashboard#autoscale} - */ - readonly autoscale?: boolean | cdktf.IResolvable; - /** - * The unit for the value displayed in the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_unit Dashboard#custom_unit} - */ - readonly customUnit?: string; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * The precision to use when displaying the tile. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#precision Dashboard#precision} - */ - readonly precision?: number; - /** - * The alignment of the widget's text. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_align Dashboard#text_align} - */ - readonly textAlign?: string; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; + +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable + /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly titleAlign?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The size of the widget's title (defaults to 16). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * @param index the index of the item to return */ - readonly titleSize?: string; + public get(index: number): DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute { /** - * custom_link block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly customLink?: DashboardWidgetQueryValueDefinitionCustomLink[] | cdktf.IResolvable; + readonly aggregation: string; /** - * request block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly request?: DashboardWidgetQueryValueDefinitionRequest[] | cdktf.IResolvable; + readonly facet?: string; /** - * timeseries_background block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeseries_background Dashboard#timeseries_background} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly timeseriesBackground?: DashboardWidgetQueryValueDefinitionTimeseriesBackground; + readonly interval?: number; } -export function dashboardWidgetQueryValueDefinitionToTerraform(struct?: DashboardWidgetQueryValueDefinitionOutputReference | DashboardWidgetQueryValueDefinition): any { +export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - autoscale: cdktf.booleanToTerraform(struct!.autoscale), - custom_unit: cdktf.stringToTerraform(struct!.customUnit), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - precision: cdktf.numberToTerraform(struct!.precision), - text_align: cdktf.stringToTerraform(struct!.textAlign), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetQueryValueDefinitionCustomLinkToTerraform, true)(struct!.customLink), - request: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestToTerraform, true)(struct!.request), - timeseries_background: dashboardWidgetQueryValueDefinitionTimeseriesBackgroundToTerraform(struct!.timeseriesBackground), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetQueryValueDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetQueryValueDefinition | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._autoscale !== undefined) { - hasAnyValues = true; - internalValueResult.autoscale = this._autoscale; - } - if (this._customUnit !== undefined) { - hasAnyValues = true; - internalValueResult.customUnit = this._customUnit; - } - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._precision !== undefined) { - hasAnyValues = true; - internalValueResult.precision = this._precision; - } - if (this._textAlign !== undefined) { - hasAnyValues = true; - internalValueResult.textAlign = this._textAlign; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._request?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.facet = this._facet; } - if (this._timeseriesBackground?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.timeseriesBackground = this._timeseriesBackground?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetQueryValueDefinition | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._autoscale = undefined; - this._customUnit = undefined; - this._liveSpan = undefined; - this._precision = undefined; - this._textAlign = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._request.internalValue = undefined; - this._timeseriesBackground.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._autoscale = value.autoscale; - this._customUnit = value.customUnit; - this._liveSpan = value.liveSpan; - this._precision = value.precision; - this._textAlign = value.textAlign; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._request.internalValue = value.request; - this._timeseriesBackground.internalValue = value.timeseriesBackground; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // autoscale - computed: false, optional: true, required: false - private _autoscale?: boolean | cdktf.IResolvable; - public get autoscale() { - return this.getBooleanAttribute('autoscale'); - } - public set autoscale(value: boolean | cdktf.IResolvable) { - this._autoscale = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetAutoscale() { - this._autoscale = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get autoscaleInput() { - return this._autoscale; + public get aggregationInput() { + return this._aggregation; } - // custom_unit - computed: false, optional: true, required: false - private _customUnit?: string; - public get customUnit() { - return this.getStringAttribute('custom_unit'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set customUnit(value: string) { - this._customUnit = value; + public set facet(value: string) { + this._facet = value; } - public resetCustomUnit() { - this._customUnit = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get customUnitInput() { - return this._customUnit; + public get facetInput() { + return this._facet; } - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set liveSpan(value: string) { - this._liveSpan = value; + public set interval(value: number) { + this._interval = value; } - public resetLiveSpan() { - this._liveSpan = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; + public get intervalInput() { + return this._interval; } +} - // precision - computed: false, optional: true, required: false - private _precision?: number; - public get precision() { - return this.getNumberAttribute('precision'); - } - public set precision(value: number) { - this._precision = value; - } - public resetPrecision() { - this._precision = undefined; +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get precisionInput() { - return this._precision; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } +} +export interface DashboardWidgetQueryValueDefinitionRequestSecurityQuery { + /** + * The name of the index to query. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + */ + readonly index: string; + /** + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; +} - // text_align - computed: false, optional: true, required: false - private _textAlign?: string; - public get textAlign() { - return this.getStringAttribute('text_align'); - } - public set textAlign(value: string) { - this._textAlign = value; - } - public resetTextAlign() { - this._textAlign = undefined; +export function dashboardWidgetQueryValueDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequestSecurityQueryOutputReference | DashboardWidgetQueryValueDefinitionRequestSecurityQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get textAlignInput() { - return this._textAlign; + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } +} - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; +export class DashboardWidgetQueryValueDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + + public get internalValue(): DashboardWidgetQueryValueDefinitionRequestSecurityQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequestSecurityQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } } - public set titleAlign(value: string) { - this._titleAlign = value; + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetTitleAlign() { - this._titleAlign = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get indexInput() { + return this._index; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set titleSize(value: string) { - this._titleSize = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetTitleSize() { - this._titleSize = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get searchQueryInput() { + return this._searchQuery; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetQueryValueDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putCustomLink(value: DashboardWidgetQueryValueDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public putComputeQuery(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetQueryValueDefinitionRequestList(this, "request", false); - public get request() { - return this._request; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putRequest(value: DashboardWidgetQueryValueDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; + public putGroupBy(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetRequest() { - this._request.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // timeseries_background - computed: false, optional: true, required: false - private _timeseriesBackground = new DashboardWidgetQueryValueDefinitionTimeseriesBackgroundOutputReference(this, "timeseries_background"); - public get timeseriesBackground() { - return this._timeseriesBackground; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putTimeseriesBackground(value: DashboardWidgetQueryValueDefinitionTimeseriesBackground) { - this._timeseriesBackground.internalValue = value; + public putMultiCompute(value: DashboardWidgetQueryValueDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetTimeseriesBackground() { - this._timeseriesBackground.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get timeseriesBackgroundInput() { - return this._timeseriesBackground.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionCustomLink { +export interface DashboardWidgetQueryValueDefinitionRequest { /** - * The flag for toggling context menu link visibility. + * The aggregator to use for time aggregation. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly aggregator?: string; /** - * The label for the custom link URL. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly label?: string; + readonly q?: string; /** - * The URL of the custom link. + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly link?: string; + readonly apmQuery?: DashboardWidgetQueryValueDefinitionRequestApmQuery; + /** + * audit_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} + */ + readonly auditQuery?: DashboardWidgetQueryValueDefinitionRequestAuditQuery; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetQueryValueDefinitionRequestConditionalFormats[] | cdktf.IResolvable; + /** + * formula block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} + */ + readonly formula?: DashboardWidgetQueryValueDefinitionRequestFormula[] | cdktf.IResolvable; + /** + * log_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} + */ + readonly logQuery?: DashboardWidgetQueryValueDefinitionRequestLogQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetQueryValueDefinitionRequestProcessQuery; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query?: DashboardWidgetQueryValueDefinitionRequestQuery[] | cdktf.IResolvable; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetQueryValueDefinitionRequestRumQuery; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly overrideLabel?: string; + readonly securityQuery?: DashboardWidgetQueryValueDefinitionRequestSecurityQuery; } -export function dashboardWidgetScatterplotDefinitionCustomLinkToTerraform(struct?: DashboardWidgetScatterplotDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetQueryValueDefinitionRequestToTerraform(struct?: DashboardWidgetQueryValueDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetQueryValueDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + audit_query: dashboardWidgetQueryValueDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), + conditional_formats: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + formula: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetQueryValueDefinitionRequestLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetQueryValueDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetQueryValueDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetQueryValueDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetScatterplotDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -11311,39 +11280,74 @@ export class DashboardWidgetScatterplotDefinitionCustomLinkOutputReference exten super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionCustomLink | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionRequest | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.aggregator = this._aggregator; } - if (this._label !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.q = this._q; } - if (this._link !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._overrideLabel !== undefined) { + if (this._auditQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.auditQuery = this._auditQuery?.internalValue; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._formula?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.formula = this._formula?.internalValue; + } + if (this._logQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; + this._aggregator = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._auditQuery.internalValue = undefined; + this._conditionalFormats.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -11352,231 +11356,199 @@ export class DashboardWidgetScatterplotDefinitionCustomLinkOutputReference exten else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._aggregator = value.aggregator; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._auditQuery.internalValue = value.auditQuery; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetIsHidden() { - this._isHidden = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get aggregatorInput() { + return this._aggregator; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set label(value: string) { - this._label = value; + public set q(value: string) { + this._q = value; } - public resetLabel() { - this._label = undefined; + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get qInput() { + return this._q; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetQueryValueDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set link(value: string) { - this._link = value; + public putApmQuery(value: DashboardWidgetQueryValueDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; } - public resetLink() { - this._link = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // audit_query - computed: false, optional: true, required: false + private _auditQuery = new DashboardWidgetQueryValueDefinitionRequestAuditQueryOutputReference(this, "audit_query"); + public get auditQuery() { + return this._auditQuery; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putAuditQuery(value: DashboardWidgetQueryValueDefinitionRequestAuditQuery) { + this._auditQuery.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetAuditQuery() { + this._auditQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get auditQueryInput() { + return this._auditQuery.internalValue; } -} - -export class DashboardWidgetScatterplotDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionCustomLink[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetQueryValueDefinitionRequestConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetScatterplotDefinitionCustomLinkOutputReference { - return new DashboardWidgetScatterplotDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putConditionalFormats(value: DashboardWidgetQueryValueDefinitionRequestConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; + } + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } -} -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula { - /** - * An expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} - */ - readonly alias?: string; - /** - * Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#dimension Dashboard#dimension} - */ - readonly dimension: string; - /** - * A string expression built from queries, formulas, and functions. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} - */ - readonly formulaExpression: string; -} -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetQueryValueDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - return { - alias: cdktf.stringToTerraform(struct!.alias), - dimension: cdktf.stringToTerraform(struct!.dimension), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + public putFormula(value: DashboardWidgetQueryValueDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; + } + public resetFormula() { + this._formula.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get formulaInput() { + return this._formula.internalValue; } -} - -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetQueryValueDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._alias !== undefined) { - hasAnyValues = true; - internalValueResult.alias = this._alias; - } - if (this._dimension !== undefined) { - hasAnyValues = true; - internalValueResult.dimension = this._dimension; - } - if (this._formulaExpression !== undefined) { - hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; - } - return hasAnyValues ? internalValueResult : undefined; + public putLogQuery(value: DashboardWidgetQueryValueDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get logQueryInput() { + return this._logQuery.internalValue; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alias = undefined; - this._dimension = undefined; - this._formulaExpression = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alias = value.alias; - this._dimension = value.dimension; - this._formulaExpression = value.formulaExpression; - } + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetQueryValueDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetQueryValueDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetQueryValueDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public set alias(value: string) { - this._alias = value; + public putQuery(value: DashboardWidgetQueryValueDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetAlias() { - this._alias = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get queryInput() { + return this._query.internalValue; } - // dimension - computed: false, optional: false, required: true - private _dimension?: string; - public get dimension() { - return this.getStringAttribute('dimension'); + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetQueryValueDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public set dimension(value: string) { - this._dimension = value; + public putRumQuery(value: DashboardWidgetQueryValueDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; + } + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get dimensionInput() { - return this._dimension; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetQueryValueDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public putSecurityQuery(value: DashboardWidgetQueryValueDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; + } + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get securityQueryInput() { + return this._securityQuery.internalValue; } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula[] | cdktf.IResolvable +export class DashboardWidgetQueryValueDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetQueryValueDefinitionRequest[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -11590,93 +11562,58 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaL /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetQueryValueDefinitionRequestOutputReference { + return new DashboardWidgetQueryValueDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName: string; +export interface DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis { /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * Always include zero or fit the axis to the data range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - readonly primaryTagName?: string; + readonly includeZero?: boolean | cdktf.IResolvable; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The label of the axis to display on the graph. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly primaryTagValue?: string; + readonly label?: string; /** - * APM resource. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly resourceName: string; + readonly max?: string; /** - * APM service. + * Specify the minimum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} */ - readonly service: string; + readonly min?: string; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} */ - readonly stat: string; + readonly scale?: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery): any { +export function dashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisToTerraform(struct?: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputReference | DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), + label: cdktf.stringToTerraform(struct!.label), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11687,303 +11624,314 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApm super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.includeZero = this._includeZero; } - if (this._primaryTagValue !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.label = this._label; } - if (this._resourceName !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.max = this._max; } - if (this._service !== undefined) { + if (this._min !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.min = this._min; } - if (this._stat !== undefined) { + if (this._scale !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._includeZero = undefined; + this._label = undefined; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._includeZero = value.includeZero; + this._label = value.label; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; } - public set env(value: string) { - this._env = value; + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get includeZeroInput() { + return this._includeZero; } - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + public set label(value: string) { + this._label = value; } - public resetIsUpstream() { - this._isUpstream = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get labelInput() { + return this._label; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set name(value: string) { - this._name = value; + public set max(value: string) { + this._max = value; + } + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get maxInput() { + return this._max; } - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); } - public set operationName(value: string) { - this._operationName = value; + public set min(value: string) { + this._min = value; + } + public resetMin() { + this._min = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get minInput() { + return this._min; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set scale(value: string) { + this._scale = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetScale() { + this._scale = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get scaleInput() { + return this._scale; } +} +export interface DashboardWidgetQueryValueDefinitionTimeseriesBackground { + /** + * Whether the Timeseries is made using an area or bars. Valid values are `bars`, `area`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} + */ + readonly type: string; + /** + * yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + */ + readonly yaxis?: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis; +} - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; - } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; +export function dashboardWidgetQueryValueDefinitionTimeseriesBackgroundToTerraform(struct?: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundOutputReference | DashboardWidgetQueryValueDefinitionTimeseriesBackground): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + return { + type: cdktf.stringToTerraform(struct!.type), + yaxis: dashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisToTerraform(struct!.yaxis), } +} - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); +export class DashboardWidgetQueryValueDefinitionTimeseriesBackgroundOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public set resourceName(value: string) { - this._resourceName = value; + + public get internalValue(): DashboardWidgetQueryValueDefinitionTimeseriesBackground | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._type !== undefined) { + hasAnyValues = true; + internalValueResult.type = this._type; + } + if (this._yaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.yaxis = this._yaxis?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + + public set internalValue(value: DashboardWidgetQueryValueDefinitionTimeseriesBackground | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._type = undefined; + this._yaxis.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._type = value.type; + this._yaxis.internalValue = value.yaxis; + } } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + // type - computed: false, optional: false, required: true + private _type?: string; + public get type() { + return this.getStringAttribute('type'); } - public set service(value: string) { - this._service = value; + public set type(value: string) { + this._type = value; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get typeInput() { + return this._type; } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + // yaxis - computed: false, optional: true, required: false + private _yaxis = new DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxisOutputReference(this, "yaxis"); + public get yaxis() { + return this._yaxis; + } + public putYaxis(value: DashboardWidgetQueryValueDefinitionTimeseriesBackgroundYaxis) { + this._yaxis.internalValue = value; } - public set stat(value: string) { - this._stat = value; + public resetYaxis() { + this._yaxis.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get yaxisInput() { + return this._yaxis.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery { +export interface DashboardWidgetQueryValueDefinition { /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. + * A Boolean indicating whether to automatically scale the tile. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#autoscale Dashboard#autoscale} */ - readonly dataSource: string; + readonly autoscale?: boolean | cdktf.IResolvable; /** - * APM Environment. + * The unit for the value displayed in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_unit Dashboard#custom_unit} */ - readonly env: string; + readonly customUnit?: string; /** - * Array of fields to group results by. + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - readonly groupBy?: string[]; + readonly liveSpan?: string; /** - * The name of query for use in formulas. + * The precision to use when displaying the tile. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#precision Dashboard#precision} */ - readonly name: string; + readonly precision?: number; /** - * Name of operation on service. + * The alignment of the widget's text. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_align Dashboard#text_align} */ - readonly operationName?: string; + readonly textAlign?: string; /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly primaryTagName?: string; + readonly title?: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly primaryTagValue?: string; + readonly titleAlign?: string; /** - * APM resource. + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly resourceName?: string; + readonly titleSize?: string; /** - * APM service. + * custom_link block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} */ - readonly service: string; + readonly customLink?: DashboardWidgetQueryValueDefinitionCustomLink[] | cdktf.IResolvable; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly stat: string; + readonly request?: DashboardWidgetQueryValueDefinitionRequest[] | cdktf.IResolvable; + /** + * timeseries_background block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeseries_background Dashboard#timeseries_background} + */ + readonly timeseriesBackground?: DashboardWidgetQueryValueDefinitionTimeseriesBackground; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery): any { +export function dashboardWidgetQueryValueDefinitionToTerraform(struct?: DashboardWidgetQueryValueDefinitionOutputReference | DashboardWidgetQueryValueDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + autoscale: cdktf.booleanToTerraform(struct!.autoscale), + custom_unit: cdktf.stringToTerraform(struct!.customUnit), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + precision: cdktf.numberToTerraform(struct!.precision), + text_align: cdktf.stringToTerraform(struct!.textAlign), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetQueryValueDefinitionCustomLinkToTerraform, true)(struct!.customLink), + request: cdktf.listMapper(dashboardWidgetQueryValueDefinitionRequestToTerraform, true)(struct!.request), + timeseries_background: dashboardWidgetQueryValueDefinitionTimeseriesBackgroundToTerraform(struct!.timeseriesBackground), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetQueryValueDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11994,260 +11942,304 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApm super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetQueryValueDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { + if (this._autoscale !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.autoscale = this._autoscale; } - if (this._env !== undefined) { + if (this._customUnit !== undefined) { hasAnyValues = true; - internalValueResult.env = this._env; + internalValueResult.customUnit = this._customUnit; } - if (this._groupBy !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; + internalValueResult.liveSpan = this._liveSpan; } - if (this._name !== undefined) { + if (this._precision !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.precision = this._precision; } - if (this._operationName !== undefined) { + if (this._textAlign !== undefined) { hasAnyValues = true; - internalValueResult.operationName = this._operationName; + internalValueResult.textAlign = this._textAlign; } - if (this._primaryTagName !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.title = this._title; } - if (this._primaryTagValue !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.titleAlign = this._titleAlign; } - if (this._resourceName !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.titleSize = this._titleSize; } - if (this._service !== undefined) { + if (this._customLink?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.customLink = this._customLink?.internalValue; } - if (this._stat !== undefined) { + if (this._request?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.request = this._request?.internalValue; + } + if (this._timeseriesBackground?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.timeseriesBackground = this._timeseriesBackground?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetQueryValueDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._autoscale = undefined; + this._customUnit = undefined; + this._liveSpan = undefined; + this._precision = undefined; + this._textAlign = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._request.internalValue = undefined; + this._timeseriesBackground.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._autoscale = value.autoscale; + this._customUnit = value.customUnit; + this._liveSpan = value.liveSpan; + this._precision = value.precision; + this._textAlign = value.textAlign; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._request.internalValue = value.request; + this._timeseriesBackground.internalValue = value.timeseriesBackground; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // autoscale - computed: false, optional: true, required: false + private _autoscale?: boolean | cdktf.IResolvable; + public get autoscale() { + return this.getBooleanAttribute('autoscale'); } - public set dataSource(value: string) { - this._dataSource = value; + public set autoscale(value: boolean | cdktf.IResolvable) { + this._autoscale = value; + } + public resetAutoscale() { + this._autoscale = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get autoscaleInput() { + return this._autoscale; } - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // custom_unit - computed: false, optional: true, required: false + private _customUnit?: string; + public get customUnit() { + return this.getStringAttribute('custom_unit'); } - public set env(value: string) { - this._env = value; + public set customUnit(value: string) { + this._customUnit = value; + } + public resetCustomUnit() { + this._customUnit = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get customUnitInput() { + return this._customUnit; } - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); } - public set groupBy(value: string[]) { - this._groupBy = value; + public set liveSpan(value: string) { + this._liveSpan = value; + } + public resetLiveSpan() { + this._liveSpan = undefined; + } + // Temporarily expose input value. Use with caution. + public get liveSpanInput() { + return this._liveSpan; + } + + // precision - computed: false, optional: true, required: false + private _precision?: number; + public get precision() { + return this.getNumberAttribute('precision'); } - public resetGroupBy() { - this._groupBy = undefined; + public set precision(value: number) { + this._precision = value; + } + public resetPrecision() { + this._precision = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; + public get precisionInput() { + return this._precision; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // text_align - computed: false, optional: true, required: false + private _textAlign?: string; + public get textAlign() { + return this.getStringAttribute('text_align'); } - public set name(value: string) { - this._name = value; + public set textAlign(value: string) { + this._textAlign = value; + } + public resetTextAlign() { + this._textAlign = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get textAlignInput() { + return this._textAlign; } - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set operationName(value: string) { - this._operationName = value; + public set title(value: string) { + this._title = value; } - public resetOperationName() { - this._operationName = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get titleInput() { + return this._title; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get titleAlignInput() { + return this._titleAlign; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get titleSizeInput() { + return this._titleSize; } - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetQueryValueDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; } - public set resourceName(value: string) { - this._resourceName = value; + public putCustomLink(value: DashboardWidgetQueryValueDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; } - public resetResourceName() { - this._resourceName = undefined; + public resetCustomLink() { + this._customLink.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get customLinkInput() { + return this._customLink.internalValue; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetQueryValueDefinitionRequestList(this, "request", false); + public get request() { + return this._request; } - public set service(value: string) { - this._service = value; + public putRequest(value: DashboardWidgetQueryValueDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get requestInput() { + return this._request.internalValue; } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + // timeseries_background - computed: false, optional: true, required: false + private _timeseriesBackground = new DashboardWidgetQueryValueDefinitionTimeseriesBackgroundOutputReference(this, "timeseries_background"); + public get timeseriesBackground() { + return this._timeseriesBackground; } - public set stat(value: string) { - this._stat = value; + public putTimeseriesBackground(value: DashboardWidgetQueryValueDefinitionTimeseriesBackground) { + this._timeseriesBackground.internalValue = value; + } + public resetTimeseriesBackground() { + this._timeseriesBackground.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get timeseriesBackgroundInput() { + return this._timeseriesBackground.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute { +export interface DashboardWidgetScatterplotDefinitionCustomLink { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly aggregation: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * A time interval in milliseconds. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly interval?: number; + readonly label?: string; /** - * The measurable attribute to compute. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly metric?: string; + readonly link?: string; + /** + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + */ + readonly overrideLabel?: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionCustomLinkToTerraform(struct?: DashboardWidgetScatterplotDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -12261,34 +12253,39 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEve super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionCustomLink | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.isHidden = this._isHidden; } - if (this._interval !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.label = this._label; } - if (this._metric !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; - this._metric = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -12297,60 +12294,80 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEve else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; - this._metric = value.metric; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set aggregation(value: string) { - this._aggregation = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get isHiddenInput() { + return this._isHidden; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); + } + public set label(value: string) { + this._label = value; + } + public resetLabel() { + this._label = undefined; + } + // Temporarily expose input value. Use with caution. + public get labelInput() { + return this._label; } - public set interval(value: number) { - this._interval = value; + + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public resetInterval() { - this._interval = undefined; + public set link(value: string) { + this._link = value; + } + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get linkInput() { + return this._link; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - public set metric(value: string) { - this._metric = value; + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public resetMetric() { - this._metric = undefined; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get overrideLabelInput() { + return this._overrideLabel; } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionCustomLink[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -12364,363 +12381,487 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEve /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionCustomLinkOutputReference { + return new DashboardWidgetScatterplotDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort { +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula { /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly aggregation: string; + readonly alias?: string; /** - * The metric used for sorting group by results. + * Dimension of the Scatterplot. Valid values are `x`, `y`, `radius`, `color`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#dimension Dashboard#dimension} */ - readonly metric?: string; + readonly dimension: string; /** - * Direction of sort. Valid values are `asc`, `desc`. + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly order?: string; + readonly formulaExpression: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), + alias: cdktf.stringToTerraform(struct!.alias), + dimension: cdktf.stringToTerraform(struct!.dimension), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.alias = this._alias; } - if (this._metric !== undefined) { + if (this._dimension !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.dimension = this._dimension; } - if (this._order !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.formulaExpression = this._formulaExpression; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._metric = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._alias = undefined; + this._dimension = undefined; + this._formulaExpression = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._metric = value.metric; - this._order = value.order; + this.resolvableValue = undefined; + this._alias = value.alias; + this._dimension = value.dimension; + this._formulaExpression = value.formulaExpression; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set aggregation(value: string) { - this._aggregation = value; + public set alias(value: string) { + this._alias = value; + } + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aliasInput() { + return this._alias; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; + // dimension - computed: false, optional: false, required: true + private _dimension?: string; + public get dimension() { + return this.getStringAttribute('dimension'); } - public resetMetric() { - this._metric = undefined; + public set dimension(value: string) { + this._dimension = value; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get dimensionInput() { + return this._dimension; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); - } - public set order(value: string) { - this._order = value; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public resetOrder() { - this._order = undefined; + public set formulaExpression(value: string) { + this._formulaExpression = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get formulaExpressionInput() { + return this._formulaExpression; } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy { + +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula[] | cdktf.IResolvable + /** - * The event facet. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery { + /** + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet: string; + readonly dataSource: string; /** - * The number of groups to return. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly limit?: number; + readonly env: string; /** - * sort block + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} + */ + readonly isUpstream?: boolean | cdktf.IResolvable; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * Name of operation on service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + */ + readonly operationName: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} */ - readonly sort?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort; + readonly stat: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortToTerraform(struct!.sort), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._sort?.internalValue !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sort.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sort.internalValue = value.sort; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // facet - computed: false, optional: false, required: true - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetLimit() { - this._limit = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get envInput() { + return this._env; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); } - public putSort(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get isUpstreamInput() { + return this._isUpstream; } -} - -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; } -} -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch { - /** - * The events search string. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query: string; -} -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - return { - query: cdktf.stringToTerraform(struct!.query), + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; } -} -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; } - - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._query !== undefined) { - hasAnyValues = true; - internalValueResult.query = this._query; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._query = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; - } + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); } - public set query(value: string) { - this._query = value; + public set stat(value: string) { + this._stat = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get statInput() { + return this._stat; } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery { +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery { /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ readonly dataSource: string; /** - * An array of index names to query in the stream. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly indexes?: string[]; + readonly env: string; + /** + * Array of fields to group results by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: string[]; /** * The name of query for use in formulas. * @@ -12728,41 +12869,63 @@ export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuer */ readonly name: string; /** - * compute block + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly compute: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute[] | cdktf.IResolvable; + readonly operationName?: string; /** - * group_by block + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly primaryTagName?: string; /** - * search block + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly search?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch; + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchToTerraform(struct!.search), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -12773,54 +12936,78 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEve super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._indexes !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.env = this._env; + } + if (this._groupBy !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._compute?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.operationName = this._operationName; } - if (this._groupBy?.internalValue !== undefined) { + if (this._primaryTagName !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.primaryTagName = this._primaryTagName; } - if (this._search?.internalValue !== undefined) { + if (this._primaryTagValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._dataSource = undefined; - this._indexes = undefined; + this._env = undefined; + this._groupBy = undefined; this._name = undefined; - this._compute.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dataSource = value.dataSource; - this._indexes = value.indexes; + this._env = value.env; + this._groupBy = value.groupBy; this._name = value.name; - this._compute.internalValue = value.compute; - this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } @@ -12837,20 +13024,33 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEve return this._dataSource; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public set indexes(value: string[]) { - this._indexes = value; + public set env(value: string) { + this._env = value; } - public resetIndexes() { - this._indexes = undefined; + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get groupByInput() { + return this._groupBy; } // name - computed: false, optional: false, required: true @@ -12858,283 +13058,292 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEve public get name() { return this.getStringAttribute('name'); } - public set name(value: string) { - this._name = value; + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; + } + + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } + + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get primaryTagValueInput() { + return this._primaryTagValue; } - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); } - public putCompute(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get resourceNameInput() { + return this._resourceName; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public set service(value: string) { + this._service = value; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get serviceInput() { + return this._service; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; - } - public putSearch(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch) { - this._search.internalValue = value; + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); } - public resetSearch() { - this._search.internalValue = undefined; + public set stat(value: string) { + this._stat = value; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get statInput() { + return this._stat; } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute { /** - * The data source for metrics queries. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly dataSource?: string; + readonly aggregation: string; /** - * The name of the query for use in formulas. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly name: string; + readonly interval?: number; /** - * The metrics query definition. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly query: string; + readonly metric?: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.aggregation = this._aggregation; } - if (this._name !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.interval = this._interval; } - if (this._query !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.metric = this._metric; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._interval = value.interval; + this._metric = value.metric; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetAggregator() { - this._aggregator = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get aggregationInput() { + return this._aggregation; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set dataSource(value: string) { - this._dataSource = value; + public set interval(value: number) { + this._interval = value; } - public resetDataSource() { - this._dataSource = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get intervalInput() { + return this._interval; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + public set metric(value: string) { + this._metric = value; } - public set query(value: string) { - this._query = value; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get metricInput() { + return this._metric; } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} - */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; - /** - * The number of hits to return. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * The process metric name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly metric: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param index the index of the item to return */ - readonly name: string; + public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort { /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly sort?: string; + readonly aggregation: string; /** - * An array of tags to filter by. + * The metric used for sorting group by results. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly tagFilters?: string[]; + readonly metric?: string; /** - * The text to use as a filter. + * Direction of sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly textFilter?: string; + readonly order?: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), + aggregation: cdktf.stringToTerraform(struct!.aggregation), metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13145,137 +13354,53 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryPro super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.aggregation = this._aggregation; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { - hasAnyValues = true; - internalValueResult.sort = this._sort; - } - if (this._tagFilters !== undefined) { - hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; - } - if (this._textFilter !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; + this._aggregation = undefined; this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; + this._aggregation = value.aggregation; this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._order = value.order; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; - } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; - } - // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLimit() { - this._limit = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get aggregationInput() { + return this._aggregation; } - // metric - computed: false, optional: false, required: true + // metric - computed: false, optional: true, required: false private _metric?: string; public get metric() { return this.getStringAttribute('metric'); @@ -13283,120 +13408,64 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryPro public set metric(value: string) { this._metric = value; } + public resetMetric() { + this._metric = undefined; + } // Temporarily expose input value. Use with caution. public get metricInput() { return this._metric; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); - } - public set sort(value: string) { - this._sort = value; - } - public resetSort() { - this._sort = undefined; - } - // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; - } - - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); - } - public set tagFilters(value: string[]) { - this._tagFilters = value; - } - public resetTagFilters() { - this._tagFilters = undefined; - } - // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; - } - - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); - } - public set textFilter(value: string) { - this._textFilter = value; + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetTextFilter() { - this._textFilter = undefined; + public set order(value: string) { + this._order = value; } - // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + public resetOrder() { + this._order = undefined; } -} -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery; - /** - * apm_resource_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} - */ - readonly apmResourceStatsQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery; + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy { /** - * event_query block + * The event facet. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly eventQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery; + readonly facet: string; /** - * metric_query block + * The number of groups to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly metricQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery; + readonly limit?: number; /** - * process_query block + * sort block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly processQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery; + readonly sort?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryToTerraform(struct!.processQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -13410,44 +13479,34 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; - } - if (this._eventQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._processQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sort.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -13456,97 +13515,60 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOut else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sort.internalValue = value.sort; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; - } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; - } - - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; - } - public putApmResourceStatsQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; - } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; - } - - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; - } - public putEventQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery) { - this._eventQuery.internalValue = value; + // facet - computed: false, optional: false, required: true + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public set facet(value: string) { + this._facet = value; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get facetInput() { + return this._facet; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetricQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get limitInput() { + return this._limit; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putProcessQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery) { - this._processQuery.internalValue = value; + public putSort(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -13560,172 +13582,136 @@ export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTable { - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula[] | cdktf.IResolvable; +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch { /** - * query block + * The events search string. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly query?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery[] | cdktf.IResolvable; + readonly query: string; } -export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTable | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - formula: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaToTerraform, true)(struct!.formula), - query: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryToTerraform, true)(struct!.query), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTable | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._query?.internalValue !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTable | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._formula.internalValue = undefined; - this._query.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._formula.internalValue = value.formula; - this._query.internalValue = value.query; + this._query = value.query; } } - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; - } - public resetFormula() { - this._formula.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; - } - - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryList(this, "query", false); + // query - computed: false, optional: false, required: true + private _query?: string; public get query() { - return this._query; - } - public putQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; - } - public resetQuery() { - this._query.internalValue = undefined; + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. public get queryInput() { - return this._query.internalValue; + return this._query; } } - -export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTable[] | cdktf.IResolvable - +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * An array of index names to query in the stream. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery { + readonly indexes?: string[]; /** - * The aggregation method. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly aggregation: string; + readonly name: string; /** - * The facet name. + * Storage location (private beta). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} */ - readonly facet?: string; + readonly storage?: string; /** - * Define the time interval in seconds. + * compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} */ - readonly interval?: number; + readonly compute: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute[] | cdktf.IResolvable; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy[] | cdktf.IResolvable; + /** + * search block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + */ + readonly search?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch; } -export function dashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13736,118 +13722,207 @@ export class DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._facet !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.indexes = this._indexes; } - if (this._interval !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._search?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; + this._groupBy.internalValue = value.groupBy; + this._search.internalValue = value.search; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set aggregation(value: string) { - this._aggregation = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get dataSourceInput() { + return this._dataSource; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public set facet(value: string) { - this._facet = value; + public set indexes(value: string[]) { + this._indexes = value; } - public resetFacet() { - this._facet = undefined; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get indexesInput() { + return this._indexes; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set interval(value: number) { - this._interval = value; + public set name(value: string) { + this._name = value; } - public resetInterval() { - this._interval = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; + } + public putCompute(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; + } + public putSearch(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuerySearch) { + this._search.internalValue = value; + } + public resetSearch() { + this._search.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchInput() { + return this._search.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery { /** - * The aggregation method. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly aggregation: string; + readonly aggregator?: string; /** - * The facet name. + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet?: string; + readonly dataSource?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly order: string; + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; } -export function dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13858,184 +13933,301 @@ export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._order !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set facet(value: string) { - this._facet = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetFacet() { - this._facet = undefined; + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set order(value: string) { - this._order = value; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; + } + // Temporarily expose input value. Use with caution. + public get queryInput() { + return this._query; } } -export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery { /** - * The facet name. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly facet?: string; + readonly aggregator?: string; /** - * The maximum number of items in the group. + * The data source for process queries. Valid values are `process`, `container`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + */ + readonly dataSource: string; + /** + * Whether to normalize the CPU percentages. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + */ + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + /** + * The number of hits to return. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort_query block + * The process metric name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery; + readonly metric: string; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The direction of the sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: string; + /** + * An array of tags to filter by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + */ + readonly tagFilters?: string[]; + /** + * The text to use as a filter. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + */ + readonly textFilter?: string; } -export function dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.aggregator = this._aggregator; + } + if (this._dataSource !== undefined) { + hasAnyValues = true; + internalValueResult.dataSource = this._dataSource; + } + if (this._isNormalizedCpu !== undefined) { + hasAnyValues = true; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; + } + } + + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); + } + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; + } + // Temporarily expose input value. Use with caution. + public get aggregatorInput() { + return this._aggregator; + } + + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; + } + // Temporarily expose input value. Use with caution. + public get dataSourceInput() { + return this._dataSource; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); } - public set facet(value: string) { - this._facet = value; + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; } - public resetFacet() { - this._facet = undefined; + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } // limit - computed: false, optional: true, required: false @@ -14054,76 +14246,128 @@ export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputRe return this._limit; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set metric(value: string) { + this._metric = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get nameInput() { + return this._name; } -} -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy[] | cdktf.IResolvable + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); + } + public set sort(value: string) { + this._sort = value; + } + public resetSort() { + this._sort = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortInput() { + return this._sort; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); + } + public set tagFilters(value: string[]) { + this._tagFilters = value; + } + public resetTagFilters() { + this._tagFilters = undefined; + } + // Temporarily expose input value. Use with caution. + public get tagFiltersInput() { + return this._tagFilters; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); + } + public set textFilter(value: string) { + this._textFilter = value; + } + public resetTextFilter() { + this._textFilter = undefined; + } + // Temporarily expose input value. Use with caution. + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery { /** - * The aggregation method. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly aggregation: string; + readonly apmDependencyStatsQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery; /** - * The facet name. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly facet?: string; + readonly apmResourceStatsQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery; /** - * Define the time interval in seconds. + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly interval?: number; + readonly eventQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery; + /** + * metric_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + */ + readonly metricQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery; } -export function dashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + apm_dependency_stats_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14137,34 +14381,44 @@ export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._facet !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._interval !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.eventQuery = this._eventQuery?.internalValue; + } + if (this._metricQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.metricQuery = this._metricQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -14173,60 +14427,97 @@ export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOut else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; + } + public putApmDependencyStatsQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; + } + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; + } + + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; + } + public putApmResourceStatsQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; + } + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; + } + + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public set aggregation(value: string) { - this._aggregation = value; + public putEventQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryEventQuery) { + this._eventQuery.internalValue = value; + } + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get eventQueryInput() { + return this._eventQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; } - public set facet(value: string) { - this._facet = value; + public putMetricQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryMetricQuery) { + this._metricQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get metricQueryInput() { + return this._metricQuery.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public set interval(value: number) { - this._interval = value; + public putProcessQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryProcessQuery) { + this._processQuery.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get processQueryInput() { + return this._processQuery.internalValue; } } -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -14240,191 +14531,139 @@ export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; - /** - * compute_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} - */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery; +export interface DashboardWidgetScatterplotDefinitionRequestScatterplotTable { /** - * group_by block + * formula block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy[] | cdktf.IResolvable; + readonly formula?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula[] | cdktf.IResolvable; /** - * multi_compute block + * query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute[] | cdktf.IResolvable; + readonly query?: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestXApmQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXApmQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestScatterplotTableToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestScatterplotTable | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + formula: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaToTerraform, true)(struct!.formula), + query: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryToTerraform, true)(struct!.query), } } -export class DashboardWidgetScatterplotDefinitionRequestXApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestScatterplotTable | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; - } - if (this._groupBy?.internalValue !== undefined) { + if (this._formula?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.formula = this._formula?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._query?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.query = this._query?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTable | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._formula.internalValue = undefined; + this._query.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._formula.internalValue = value.formula; + this._query.internalValue = value.query; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - public set searchQuery(value: string) { - this._searchQuery = value; + public putFormula(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFormula() { + this._formula.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get formulaInput() { + return this._formula.internalValue; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableQueryList(this, "query", false); + public get query() { + return this._query; } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putQuery(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTableQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get queryInput() { + return this._query.internalValue; } +} - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; - } - public resetGroupBy() { - this._groupBy.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } +export class DashboardWidgetScatterplotDefinitionRequestScatterplotTableList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestScatterplotTable[] | cdktf.IResolvable - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetScatterplotDefinitionRequestScatterplotTableOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestScatterplotTableOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery { /** * The aggregation method. * @@ -14445,7 +14684,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuer readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14457,7 +14696,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14468,7 +14707,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -14486,7 +14725,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -14546,7 +14785,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOut return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery { /** * The aggregation method. * @@ -14567,7 +14806,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySort readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14579,7 +14818,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQ } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14590,7 +14829,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -14608,7 +14847,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -14665,7 +14904,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuer return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy { /** * The facet name. * @@ -14683,10 +14922,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14694,11 +14933,11 @@ export function dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByToTer return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14712,7 +14951,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -14733,7 +14972,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -14787,11 +15026,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputRe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -14803,8 +15042,8 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputRe } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -14818,11 +15057,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute { /** * The aggregation method. * @@ -14843,7 +15082,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14855,7 +15094,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14869,7 +15108,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -14890,7 +15129,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -14957,8 +15196,8 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOut } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -14972,11 +15211,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXLogQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXApmQuery { /** * The name of the index to query. * @@ -14994,22 +15233,22 @@ export interface DashboardWidgetScatterplotDefinitionRequestXLogQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestXLogQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXLogQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXApmQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXApmQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15017,13 +15256,13 @@ export function dashboardWidgetScatterplotDefinitionRequestXLogQueryToTerraform( return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15034,7 +15273,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -15060,7 +15299,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -15109,11 +15348,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -15125,11 +15364,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -15141,173 +15380,22 @@ export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXApmQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; - } -} -export interface DashboardWidgetScatterplotDefinitionRequestXProcessQuery { - /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} - */ - readonly filterBy?: string[]; - /** - * The max number of items in the filter list. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * Your chosen metric. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * Your chosen search term. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} - */ - readonly searchBy?: string; -} - -export function dashboardWidgetScatterplotDefinitionRequestXProcessQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXProcessQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXProcessQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), - } -} - -export class DashboardWidgetScatterplotDefinitionRequestXProcessQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXProcessQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._searchBy !== undefined) { - hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXProcessQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; - } - } - - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; - } - public resetFilterBy() { - this._filterBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery { /** * The aggregation method. * @@ -15328,7 +15416,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuer readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15340,7 +15428,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15351,7 +15439,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -15369,7 +15457,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -15429,7 +15517,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOut return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery { /** * The aggregation method. * @@ -15450,7 +15538,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySort readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15462,7 +15550,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQ } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15473,7 +15561,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -15491,7 +15579,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -15548,7 +15636,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuer return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy { /** * The facet name. * @@ -15566,10 +15654,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15577,11 +15665,11 @@ export function dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByToTer return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -15595,7 +15683,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -15616,7 +15704,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -15670,11 +15758,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputRe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -15686,8 +15774,8 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputRe } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -15701,11 +15789,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute { /** * The aggregation method. * @@ -15726,7 +15814,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15738,7 +15826,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -15752,7 +15840,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -15773,7 +15861,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -15840,8 +15928,8 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOut } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -15855,11 +15943,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXRumQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXLogQuery { /** * The name of the index to query. * @@ -15877,22 +15965,22 @@ export interface DashboardWidgetScatterplotDefinitionRequestXRumQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestXRumQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXRumQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXLogQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15900,13 +15988,13 @@ export function dashboardWidgetScatterplotDefinitionRequestXRumQueryToTerraform( return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15917,7 +16005,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -15943,7 +16031,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -15992,11 +16080,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -16008,11 +16096,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -16024,11 +16112,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXLogQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -16039,7 +16127,158 @@ export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference return this._multiCompute.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXProcessQuery { + /** + * A list of processes. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + */ + readonly filterBy?: string[]; + /** + * The max number of items in the filter list. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * Your chosen metric. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; +} + +export function dashboardWidgetScatterplotDefinitionRequestXProcessQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXProcessQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXProcessQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), + } +} + +export class DashboardWidgetScatterplotDefinitionRequestXProcessQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXProcessQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._filterBy !== undefined) { + hasAnyValues = true; + internalValueResult.filterBy = this._filterBy; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXProcessQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._filterBy = undefined; + this._limit = undefined; + this._metric = undefined; + this._searchBy = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._filterBy = value.filterBy; + this._limit = value.limit; + this._metric = value.metric; + this._searchBy = value.searchBy; + } + } + + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); + } + public set filterBy(value: string[]) { + this._filterBy = value; + } + public resetFilterBy() { + this._filterBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get filterByInput() { + return this._filterBy; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchByInput() { + return this._searchBy; + } +} +export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery { /** * The aggregation method. * @@ -16060,7 +16299,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16072,7 +16311,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryCompute } } -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16083,7 +16322,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -16101,7 +16340,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQue return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -16161,7 +16400,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQue return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery { /** * The aggregation method. * @@ -16182,7 +16421,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupB readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16194,7 +16433,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy } } -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16205,7 +16444,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySor super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -16223,7 +16462,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySor return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -16280,7 +16519,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySor return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy { /** * The facet name. * @@ -16298,10 +16537,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupB * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16309,11 +16548,11 @@ export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -16327,7 +16566,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -16348,7 +16587,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -16402,11 +16641,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOut } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -16418,8 +16657,8 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOut } } -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -16433,11 +16672,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute { /** * The aggregation method. * @@ -16458,7 +16697,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiC readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16470,7 +16709,7 @@ export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCo } } -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -16484,7 +16723,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -16505,7 +16744,7 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -16572,8 +16811,8 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompu } } -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -16587,11 +16826,11 @@ export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompu /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXRumQuery { /** * The name of the index to query. * @@ -16607,444 +16846,171 @@ export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQuery { /** * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} - */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery; - /** - * group_by block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy[] | cdktf.IResolvable; - /** - * multi_compute block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} - */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute[] | cdktf.IResolvable; -} - -export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXSecurityQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), - } -} - -export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; - } - if (this._groupBy?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; - } - if (this._multiCompute?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; - } - } - - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; - } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; - } - - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; - } - public resetGroupBy() { - this._groupBy.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } - - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; - } -} -export interface DashboardWidgetScatterplotDefinitionRequestX { - /** - * Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetScatterplotDefinitionRequestXApmQuery; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetScatterplotDefinitionRequestXLogQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly processQuery?: DashboardWidgetScatterplotDefinitionRequestXProcessQuery; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery; /** - * rum_query block + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly rumQuery?: DashboardWidgetScatterplotDefinitionRequestXRumQuery; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy[] | cdktf.IResolvable; /** - * security_query block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly securityQuery?: DashboardWidgetScatterplotDefinitionRequestXSecurityQuery; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestXToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestX | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXRumQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetScatterplotDefinitionRequestXApmQueryToTerraform(struct!.apmQuery), - log_query: dashboardWidgetScatterplotDefinitionRequestXLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetScatterplotDefinitionRequestXProcessQueryToTerraform(struct!.processQuery), - rum_query: dashboardWidgetScatterplotDefinitionRequestXRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetScatterplotDefinitionRequestXSecurityQueryToTerraform(struct!.securityQuery), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionRequestXOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestX | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; + internalValueResult.index = this._index; } - if (this._logQuery?.internalValue !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; + internalValueResult.searchQuery = this._searchQuery; } - if (this._processQuery?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestX | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregator = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregator = value.aggregator; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetScatterplotDefinitionRequestXApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetScatterplotDefinitionRequestXApmQuery) { - this._apmQuery.internalValue = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; + public get indexInput() { + return this._index; } - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public putLogQuery(value: DashboardWidgetScatterplotDefinitionRequestXLogQuery) { - this._logQuery.internalValue = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLogQuery() { - this._logQuery.internalValue = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; + public get searchQueryInput() { + return this._searchQuery; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetScatterplotDefinitionRequestXProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putProcessQuery(value: DashboardWidgetScatterplotDefinitionRequestXProcessQuery) { - this._processQuery.internalValue = value; + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putRumQuery(value: DashboardWidgetScatterplotDefinitionRequestXRumQuery) { - this._rumQuery.internalValue = value; + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putSecurityQuery(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQuery) { - this._securityQuery.internalValue = value; + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; - } -} - -export class DashboardWidgetScatterplotDefinitionRequestXList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestX[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestXOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestXOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery { /** * The aggregation method. * @@ -17065,7 +17031,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuer readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17077,7 +17043,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17088,7 +17054,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -17106,7 +17072,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -17166,7 +17132,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOut return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery { /** * The aggregation method. * @@ -17187,7 +17153,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySort readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17199,7 +17165,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQ } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17210,7 +17176,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -17228,7 +17194,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -17285,7 +17251,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuer return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy { /** * The facet name. * @@ -17303,10 +17269,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17314,11 +17280,11 @@ export function dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByToTer return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17332,7 +17298,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -17353,7 +17319,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -17407,11 +17373,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputRe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -17423,8 +17389,8 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputRe } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17438,11 +17404,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute { /** * The aggregation method. * @@ -17463,7 +17429,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17475,7 +17441,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17489,7 +17455,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -17510,7 +17476,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -17577,8 +17543,8 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOut } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17592,11 +17558,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYApmQuery { +export interface DashboardWidgetScatterplotDefinitionRequestXSecurityQuery { /** * The name of the index to query. * @@ -17604,179 +17570,452 @@ export interface DashboardWidgetScatterplotDefinitionRequestYApmQuery { */ readonly index: string; /** - * The search query to use. + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetScatterplotDefinitionRequestXSecurityQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestXSecurityQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + } +} + +export class DashboardWidgetScatterplotDefinitionRequestXSecurityQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestXSecurityQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } + } + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; + } +} +export interface DashboardWidgetScatterplotDefinitionRequestX { + /** + * Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} + */ + readonly aggregator?: string; + /** + * The metric query to use for this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} + */ + readonly q?: string; + /** + * apm_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} + */ + readonly apmQuery?: DashboardWidgetScatterplotDefinitionRequestXApmQuery; + /** + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly searchQuery?: string; + readonly logQuery?: DashboardWidgetScatterplotDefinitionRequestXLogQuery; /** - * compute_query block + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery; + readonly processQuery?: DashboardWidgetScatterplotDefinitionRequestXProcessQuery; /** - * group_by block + * rum_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy[] | cdktf.IResolvable; + readonly rumQuery?: DashboardWidgetScatterplotDefinitionRequestXRumQuery; /** - * multi_compute block + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute[] | cdktf.IResolvable; + readonly securityQuery?: DashboardWidgetScatterplotDefinitionRequestXSecurityQuery; } -export function dashboardWidgetScatterplotDefinitionRequestYApmQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYApmQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestXToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestX | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetScatterplotDefinitionRequestXApmQueryToTerraform(struct!.apmQuery), + log_query: dashboardWidgetScatterplotDefinitionRequestXLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetScatterplotDefinitionRequestXProcessQueryToTerraform(struct!.processQuery), + rum_query: dashboardWidgetScatterplotDefinitionRequestXRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetScatterplotDefinitionRequestXSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestXOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestX | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.aggregator = this._aggregator; } - if (this._searchQuery !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.q = this._q; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._groupBy?.internalValue !== undefined) { + if (this._logQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.logQuery = this._logQuery?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestX | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregator = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this.resolvableValue = undefined; + this._aggregator = value.aggregator; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set index(value: string) { - this._index = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aggregatorInput() { + return this._aggregator; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set q(value: string) { + this._q = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get qInput() { + return this._q; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetScatterplotDefinitionRequestXApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public putApmQuery(value: DashboardWidgetScatterplotDefinitionRequestXApmQuery) { + this._apmQuery.internalValue = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetScatterplotDefinitionRequestXLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public putLogQuery(value: DashboardWidgetScatterplotDefinitionRequestXLogQuery) { + this._logQuery.internalValue = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetLogQuery() { + this._logQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get logQueryInput() { + return this._logQuery.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetScatterplotDefinitionRequestXProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putProcessQuery(value: DashboardWidgetScatterplotDefinitionRequestXProcessQuery) { + this._processQuery.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get processQueryInput() { + return this._processQuery.internalValue; + } + + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetScatterplotDefinitionRequestXRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; + } + public putRumQuery(value: DashboardWidgetScatterplotDefinitionRequestXRumQuery) { + this._rumQuery.internalValue = value; + } + public resetRumQuery() { + this._rumQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get rumQueryInput() { + return this._rumQuery.internalValue; + } + + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetScatterplotDefinitionRequestXSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; + } + public putSecurityQuery(value: DashboardWidgetScatterplotDefinitionRequestXSecurityQuery) { + this._securityQuery.internalValue = value; + } + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get securityQueryInput() { + return this._securityQuery.internalValue; + } +} + +export class DashboardWidgetScatterplotDefinitionRequestXList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestX[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetScatterplotDefinitionRequestXOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestXOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery { /** * The aggregation method. * @@ -17797,7 +18036,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuer readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17809,7 +18048,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17820,7 +18059,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -17838,7 +18077,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -17898,7 +18137,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOut return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery { /** * The aggregation method. * @@ -17919,7 +18158,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySort readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17931,7 +18170,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQ } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17942,7 +18181,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -17960,7 +18199,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -18017,7 +18256,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuer return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy { /** * The facet name. * @@ -18035,10 +18274,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -18046,11 +18285,11 @@ export function dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByToTer return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -18064,7 +18303,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -18085,7 +18324,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -18139,11 +18378,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputRe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -18155,8 +18394,8 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputRe } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -18170,11 +18409,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute { /** * The aggregation method. * @@ -18195,7 +18434,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -18207,7 +18446,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -18221,7 +18460,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -18242,7 +18481,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -18309,8 +18548,8 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOut } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -18324,11 +18563,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYLogQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYApmQuery { /** * The name of the index to query. * @@ -18346,22 +18585,22 @@ export interface DashboardWidgetScatterplotDefinitionRequestYLogQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestYLogQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYLogQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYApmQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -18369,13 +18608,13 @@ export function dashboardWidgetScatterplotDefinitionRequestYLogQueryToTerraform( return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18386,7 +18625,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -18412,7 +18651,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -18461,11 +18700,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -18477,189 +18716,38 @@ export class DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; - } - public resetGroupBy() { - this._groupBy.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; - } - - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; - } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; - } -} -export interface DashboardWidgetScatterplotDefinitionRequestYProcessQuery { - /** - * A list of processes. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} - */ - readonly filterBy?: string[]; - /** - * The max number of items in the filter list. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * Your chosen metric. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * Your chosen search term. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} - */ - readonly searchBy?: string; -} - -export function dashboardWidgetScatterplotDefinitionRequestYProcessQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYProcessQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), - } -} - -export class DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYProcessQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._filterBy !== undefined) { - hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._searchBy !== undefined) { - hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYProcessQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; - } - } - - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; - } - public resetFilterBy() { - this._filterBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set metric(value: string) { - this._metric = value; + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get groupByInput() { + return this._groupBy.internalValue; } - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public set searchBy(value: string) { - this._searchBy = value; + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetSearchBy() { - this._searchBy = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery { /** * The aggregation method. * @@ -18680,7 +18768,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuer readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -18692,7 +18780,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18703,7 +18791,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -18721,7 +18809,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -18781,7 +18869,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOut return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery { /** * The aggregation method. * @@ -18802,7 +18890,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySort readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -18814,7 +18902,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQ } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18825,7 +18913,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -18843,7 +18931,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -18900,7 +18988,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuer return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy { /** * The facet name. * @@ -18918,10 +19006,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -18929,11 +19017,11 @@ export function dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByToTer return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -18947,7 +19035,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -18968,7 +19056,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -19022,11 +19110,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputRe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -19038,8 +19126,8 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputRe } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19053,11 +19141,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute { +export interface DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute { /** * The aggregation method. * @@ -19078,7 +19166,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19090,7 +19178,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -19104,7 +19192,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -19125,7 +19213,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -19192,8 +19280,8 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOut } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19207,11 +19295,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetScatterplotDefinitionRequestYRumQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYLogQuery { /** * The name of the index to query. * @@ -19229,22 +19317,22 @@ export interface DashboardWidgetScatterplotDefinitionRequestYRumQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestYRumQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYRumQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYLogQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19252,13 +19340,13 @@ export function dashboardWidgetScatterplotDefinitionRequestYRumQueryToTerraform( return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19269,7 +19357,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -19295,7 +19383,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -19327,71 +19415,222 @@ export class DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference return this._index; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; + } +} +export interface DashboardWidgetScatterplotDefinitionRequestYProcessQuery { + /** + * A list of processes. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + */ + readonly filterBy?: string[]; + /** + * The max number of items in the filter list. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * Your chosen metric. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; +} + +export function dashboardWidgetScatterplotDefinitionRequestYProcessQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYProcessQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), + } +} + +export class DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYProcessQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._filterBy !== undefined) { + hasAnyValues = true; + internalValueResult.filterBy = this._filterBy; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYProcessQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._filterBy = undefined; + this._limit = undefined; + this._metric = undefined; + this._searchBy = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._filterBy = value.filterBy; + this._limit = value.limit; + this._metric = value.metric; + this._searchBy = value.searchBy; + } + } + + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set filterBy(value: string[]) { + this._filterBy = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get filterByInput() { + return this._filterBy; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get limitInput() { + return this._limit; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public set metric(value: string) { + this._metric = value; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get metricInput() { + return this._metric; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set searchBy(value: string) { + this._searchBy = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery { /** * The aggregation method. * @@ -19412,7 +19651,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComput readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19424,7 +19663,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryCompute } } -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19435,7 +19674,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -19453,7 +19692,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQue return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -19513,7 +19752,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQue return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery { /** * The aggregation method. * @@ -19534,7 +19773,7 @@ export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupB readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19546,7 +19785,7 @@ export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy } } -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19557,7 +19796,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySor super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -19575,7 +19814,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySor return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -19632,7 +19871,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySor return this._order; } } -export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy { +export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy { /** * The facet name. * @@ -19650,10 +19889,10 @@ export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupB * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19661,11 +19900,11 @@ export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -19679,7 +19918,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -19700,7 +19939,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -19754,11 +19993,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOut } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -19770,8 +20009,162 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOut } } -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} + +export function dashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19785,7 +20178,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } diff --git a/src/dashboard/index-structs/structs2800.ts b/src/dashboard/index-structs/structs2800.ts index 3c07e8262..f9e86f277 100644 --- a/src/dashboard/index-structs/structs2800.ts +++ b/src/dashboard/index-structs/structs2800.ts @@ -1,10 +1,13 @@ import * as cdktf from 'cdktf'; -import { DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery, -dashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryToTerraform, -DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference, -DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy, -dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByToTerraform, -DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByList, +import { DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery, +dashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryToTerraform, +DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference, +DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy, +dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByToTerraform, +DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByList, +DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute, +dashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeToTerraform, +DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeList, DashboardWidgetScatterplotDefinitionRequestYApmQuery, dashboardWidgetScatterplotDefinitionRequestYApmQueryToTerraform, DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference, @@ -14,9 +17,6 @@ DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference, DashboardWidgetScatterplotDefinitionRequestYProcessQuery, dashboardWidgetScatterplotDefinitionRequestYProcessQueryToTerraform, DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference, -DashboardWidgetScatterplotDefinitionRequestYRumQuery, -dashboardWidgetScatterplotDefinitionRequestYRumQueryToTerraform, -DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference, DashboardWidgetScatterplotDefinitionRequestScatterplotTable, dashboardWidgetScatterplotDefinitionRequestScatterplotTableToTerraform, DashboardWidgetScatterplotDefinitionRequestScatterplotTableList, @@ -26,161 +26,7 @@ DashboardWidgetScatterplotDefinitionRequestXList, DashboardWidgetScatterplotDefinitionCustomLink, dashboardWidgetScatterplotDefinitionCustomLinkToTerraform, DashboardWidgetScatterplotDefinitionCustomLinkList } from './structs2400' -export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Define the time interval in seconds. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} - */ - readonly interval?: number; -} - -export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), - } -} - -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQuery { +export interface DashboardWidgetScatterplotDefinitionRequestYRumQuery { /** * The name of the index to query. * @@ -198,22 +44,22 @@ export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYSecurityQuery): any { +export function dashboardWidgetScatterplotDefinitionRequestYRumQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -221,13 +67,13 @@ export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryToTerra return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -238,7 +84,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputRefe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQuery | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -264,7 +110,7 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputRefe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -313,11 +159,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputRefe } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -329,11 +175,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputRefe } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -345,11 +191,11 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputRefe } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYRumQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -360,313 +206,162 @@ export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputRefe return this._multiCompute.internalValue; } } -export interface DashboardWidgetScatterplotDefinitionRequestY { - /** - * Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetScatterplotDefinitionRequestYApmQuery; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetScatterplotDefinitionRequestYLogQuery; +export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery { /** - * process_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly processQuery?: DashboardWidgetScatterplotDefinitionRequestYProcessQuery; + readonly aggregation: string; /** - * rum_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly rumQuery?: DashboardWidgetScatterplotDefinitionRequestYRumQuery; + readonly facet?: string; /** - * security_query block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly securityQuery?: DashboardWidgetScatterplotDefinitionRequestYSecurityQuery; + readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionRequestYToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestY | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetScatterplotDefinitionRequestYApmQueryToTerraform(struct!.apmQuery), - log_query: dashboardWidgetScatterplotDefinitionRequestYLogQueryToTerraform(struct!.logQuery), - process_query: dashboardWidgetScatterplotDefinitionRequestYProcessQueryToTerraform(struct!.processQuery), - rum_query: dashboardWidgetScatterplotDefinitionRequestYRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetScatterplotDefinitionRequestYSecurityQueryToTerraform(struct!.securityQuery), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetScatterplotDefinitionRequestYOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequestY | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._q !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.q = this._q; + internalValueResult.aggregation = this._aggregation; } - if (this._apmQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._logQuery?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._rumQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; - } - if (this._securityQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestY | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregator = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregator = value.aggregator; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._logQuery.internalValue = value.logQuery; - this._processQuery.internalValue = value.processQuery; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetScatterplotDefinitionRequestYApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetScatterplotDefinitionRequestYLogQuery) { - this._logQuery.internalValue = value; - } - public resetLogQuery() { - this._logQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetScatterplotDefinitionRequestYProcessQuery) { - this._processQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putRumQuery(value: DashboardWidgetScatterplotDefinitionRequestYRumQuery) { - this._rumQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get facetInput() { + return this._facet; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putSecurityQuery(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQuery) { - this._securityQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; - } -} - -export class DashboardWidgetScatterplotDefinitionRequestYList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetScatterplotDefinitionRequestY[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetScatterplotDefinitionRequestYOutputReference { - return new DashboardWidgetScatterplotDefinitionRequestYOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetScatterplotDefinitionRequest { +export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery { /** - * scatterplot_table block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scatterplot_table Dashboard#scatterplot_table} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly scatterplotTable?: DashboardWidgetScatterplotDefinitionRequestScatterplotTable[] | cdktf.IResolvable; + readonly aggregation: string; /** - * x block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#x Dashboard#x} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly x?: DashboardWidgetScatterplotDefinitionRequestX[] | cdktf.IResolvable; + readonly facet?: string; /** - * y block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#y Dashboard#y} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly y?: DashboardWidgetScatterplotDefinitionRequestY[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetScatterplotDefinitionRequestToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestOutputReference | DashboardWidgetScatterplotDefinitionRequest): any { +export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - scatterplot_table: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableToTerraform, true)(struct!.scatterplotTable), - x: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXToTerraform, true)(struct!.x), - y: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYToTerraform, true)(struct!.y), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetScatterplotDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -677,529 +372,440 @@ export class DashboardWidgetScatterplotDefinitionRequestOutputReference extends super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinitionRequest | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._scatterplotTable?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.scatterplotTable = this._scatterplotTable?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._x?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.x = this._x?.internalValue; + internalValueResult.facet = this._facet; } - if (this._y?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.y = this._y?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionRequest | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._scatterplotTable.internalValue = undefined; - this._x.internalValue = undefined; - this._y.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._scatterplotTable.internalValue = value.scatterplotTable; - this._x.internalValue = value.x; - this._y.internalValue = value.y; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // scatterplot_table - computed: false, optional: true, required: false - private _scatterplotTable = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableList(this, "scatterplot_table", false); - public get scatterplotTable() { - return this._scatterplotTable; - } - public putScatterplotTable(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTable[] | cdktf.IResolvable) { - this._scatterplotTable.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetScatterplotTable() { - this._scatterplotTable.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get scatterplotTableInput() { - return this._scatterplotTable.internalValue; + public get aggregationInput() { + return this._aggregation; } - // x - computed: false, optional: true, required: false - private _x = new DashboardWidgetScatterplotDefinitionRequestXList(this, "x", false); - public get x() { - return this._x; - } - public putX(value: DashboardWidgetScatterplotDefinitionRequestX[] | cdktf.IResolvable) { - this._x.internalValue = value; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public resetX() { - this._x.internalValue = undefined; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get xInput() { - return this._x.internalValue; + public get facetInput() { + return this._facet; } - // y - computed: false, optional: true, required: false - private _y = new DashboardWidgetScatterplotDefinitionRequestYList(this, "y", false); - public get y() { - return this._y; - } - public putY(value: DashboardWidgetScatterplotDefinitionRequestY[] | cdktf.IResolvable) { - this._y.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetY() { - this._y.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get yInput() { - return this._y.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetScatterplotDefinitionXaxis { - /** - * Always include zero or fit the axis to the data range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} - */ - readonly includeZero?: boolean | cdktf.IResolvable; - /** - * The label of the axis to display on the graph. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; +export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy { /** - * Specify the maximum value to show on the Y-axis. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly max?: string; + readonly facet?: string; /** - * Specify the minimum value to show on the Y-axis. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly min?: string; + readonly limit?: number; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly scale?: string; + readonly sortQuery?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery; } -export function dashboardWidgetScatterplotDefinitionXaxisToTerraform(struct?: DashboardWidgetScatterplotDefinitionXaxisOutputReference | DashboardWidgetScatterplotDefinitionXaxis): any { +export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetScatterplotDefinitionXaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionXaxis | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { - hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._max !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.facet = this._facet; } - if (this._min !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.limit = this._limit; } - if (this._scale !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionXaxis | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; + public set facet(value: string) { + this._facet = value; } - public resetIncludeZero() { - this._includeZero = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; + public get facetInput() { + return this._facet; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set label(value: string) { - this._label = value; + public set limit(value: number) { + this._limit = value; } - public resetLabel() { - this._label = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get limitInput() { + return this._limit; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set max(value: string) { - this._max = value; + public putSortQuery(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetMax() { - this._max = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); - } - public set min(value: string) { - this._min = value; - } - public resetMin() { - this._min = undefined; - } - // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; - } +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy[] | cdktf.IResolvable - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); - } - public set scale(value: string) { - this._scale = value; - } - public resetScale() { - this._scale = undefined; - } - // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; - } -} -export interface DashboardWidgetScatterplotDefinitionYaxis { /** - * Always include zero or fit the axis to the data range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly includeZero?: boolean | cdktf.IResolvable; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The label of the axis to display on the graph. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * @param index the index of the item to return */ - readonly label?: string; + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute { /** - * Specify the maximum value to show on the Y-axis. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly max?: string; + readonly aggregation: string; /** - * Specify the minimum value to show on the Y-axis. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly min?: string; + readonly facet?: string; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly scale?: string; + readonly interval?: number; } -export function dashboardWidgetScatterplotDefinitionYaxisToTerraform(struct?: DashboardWidgetScatterplotDefinitionYaxisOutputReference | DashboardWidgetScatterplotDefinitionYaxis): any { +export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetScatterplotDefinitionYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetScatterplotDefinitionYaxis | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { - hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._max !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.aggregation = this._aggregation; } - if (this._min !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.facet = this._facet; } - if (this._scale !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinitionYaxis | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); - } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetIncludeZero() { - this._includeZero = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; + public get aggregationInput() { + return this._aggregation; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set label(value: string) { - this._label = value; + public set facet(value: string) { + this._facet = value; } - public resetLabel() { - this._label = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get facetInput() { + return this._facet; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set max(value: string) { - this._max = value; + public set interval(value: number) { + this._interval = value; } - public resetMax() { - this._max = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; + public get intervalInput() { + return this._interval; } +} - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); - } - public set min(value: string) { - this._min = value; - } - public resetMin() { - this._min = undefined; - } - // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; - } +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute[] | cdktf.IResolvable - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); - } - public set scale(value: string) { - this._scale = value; - } - public resetScale() { - this._scale = undefined; - } - // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; - } -} -export interface DashboardWidgetScatterplotDefinition { - /** - * List of groups used for colors. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#color_by_groups Dashboard#color_by_groups} - */ - readonly colorByGroups?: string[]; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly title?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + * @param index the index of the item to return */ - readonly titleAlign?: string; + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetScatterplotDefinitionRequestYSecurityQuery { /** - * The size of the widget's title (defaults to 16). + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly titleSize?: string; + readonly index: string; /** - * custom_link block + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly customLink?: DashboardWidgetScatterplotDefinitionCustomLink[] | cdktf.IResolvable; + readonly searchQuery?: string; /** - * request block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly request?: DashboardWidgetScatterplotDefinitionRequest; + readonly computeQuery?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery; /** - * xaxis block + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#xaxis Dashboard#xaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly xaxis?: DashboardWidgetScatterplotDefinitionXaxis; + readonly groupBy?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy[] | cdktf.IResolvable; /** - * yaxis block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly yaxis?: DashboardWidgetScatterplotDefinitionYaxis; + readonly multiCompute?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetScatterplotDefinitionToTerraform(struct?: DashboardWidgetScatterplotDefinitionOutputReference | DashboardWidgetScatterplotDefinition): any { +export function dashboardWidgetScatterplotDefinitionRequestYSecurityQueryToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputReference | DashboardWidgetScatterplotDefinitionRequestYSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - color_by_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.colorByGroups), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetScatterplotDefinitionCustomLinkToTerraform, true)(struct!.customLink), - request: dashboardWidgetScatterplotDefinitionRequestToTerraform(struct!.request), - xaxis: dashboardWidgetScatterplotDefinitionXaxisToTerraform(struct!.xaxis), - yaxis: dashboardWidgetScatterplotDefinitionYaxisToTerraform(struct!.yaxis), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetScatterplotDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1210,747 +816,574 @@ export class DashboardWidgetScatterplotDefinitionOutputReference extends cdktf.C super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetScatterplotDefinition | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestYSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._colorByGroups !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.colorByGroups = this._colorByGroups; + internalValueResult.index = this._index; } - if (this._liveSpan !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; + internalValueResult.searchQuery = this._searchQuery; } - if (this._title !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; - } - if (this._request?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._xaxis?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.xaxis = this._xaxis?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._yaxis?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.yaxis = this._yaxis?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetScatterplotDefinition | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._colorByGroups = undefined; - this._liveSpan = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._request.internalValue = undefined; - this._xaxis.internalValue = undefined; - this._yaxis.internalValue = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._colorByGroups = value.colorByGroups; - this._liveSpan = value.liveSpan; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._request.internalValue = value.request; - this._xaxis.internalValue = value.xaxis; - this._yaxis.internalValue = value.yaxis; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // color_by_groups - computed: false, optional: true, required: false - private _colorByGroups?: string[]; - public get colorByGroups() { - return this.getListAttribute('color_by_groups'); - } - public set colorByGroups(value: string[]) { - this._colorByGroups = value; - } - public resetColorByGroups() { - this._colorByGroups = undefined; - } - // Temporarily expose input value. Use with caution. - public get colorByGroupsInput() { - return this._colorByGroups; - } - - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; - } - public resetLiveSpan() { - this._liveSpan = undefined; - } - // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; - } - - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; - } - - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); - } - public set titleAlign(value: string) { - this._titleAlign = value; - } - public resetTitleAlign() { - this._titleAlign = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; - } - - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetTitleSize() { - this._titleSize = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get indexInput() { + return this._index; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetScatterplotDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public putCustomLink(value: DashboardWidgetScatterplotDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get searchQueryInput() { + return this._searchQuery; } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetScatterplotDefinitionRequestOutputReference(this, "request"); - public get request() { - return this._request; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public putRequest(value: DashboardWidgetScatterplotDefinitionRequest) { - this._request.internalValue = value; + public putComputeQuery(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetRequest() { - this._request.internalValue = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // xaxis - computed: false, optional: true, required: false - private _xaxis = new DashboardWidgetScatterplotDefinitionXaxisOutputReference(this, "xaxis"); - public get xaxis() { - return this._xaxis; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putXaxis(value: DashboardWidgetScatterplotDefinitionXaxis) { - this._xaxis.internalValue = value; + public putGroupBy(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetXaxis() { - this._xaxis.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get xaxisInput() { - return this._xaxis.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // yaxis - computed: false, optional: true, required: false - private _yaxis = new DashboardWidgetScatterplotDefinitionYaxisOutputReference(this, "yaxis"); - public get yaxis() { - return this._yaxis; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putYaxis(value: DashboardWidgetScatterplotDefinitionYaxis) { - this._yaxis.internalValue = value; + public putMultiCompute(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetYaxis() { - this._yaxis.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get yaxisInput() { - return this._yaxis.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetServiceLevelObjectiveDefinition { +export interface DashboardWidgetScatterplotDefinitionRequestY { /** - * The global time target of the widget. + * Aggregator used for the request. Valid values are `avg`, `last`, `max`, `min`, `sum`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#global_time_target Dashboard#global_time_target} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly globalTimeTarget?: string; + readonly aggregator?: string; /** - * Whether to show the error budget or not. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_error_budget Dashboard#show_error_budget} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly showErrorBudget?: boolean | cdktf.IResolvable; + readonly q?: string; /** - * The ID of the service level objective used by the widget. + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#slo_id Dashboard#slo_id} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly sloId: string; + readonly apmQuery?: DashboardWidgetScatterplotDefinitionRequestYApmQuery; /** - * A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#time_windows Dashboard#time_windows} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly timeWindows: string[]; + readonly logQuery?: DashboardWidgetScatterplotDefinitionRequestYLogQuery; /** - * The title of the widget. + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly title?: string; + readonly processQuery?: DashboardWidgetScatterplotDefinitionRequestYProcessQuery; /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * rum_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} */ - readonly titleAlign?: string; - /** - * The size of the widget's title (defaults to 16). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} - */ - readonly titleSize?: string; - /** - * The view mode for the widget. Valid values are `overall`, `component`, `both`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#view_mode Dashboard#view_mode} - */ - readonly viewMode: string; + readonly rumQuery?: DashboardWidgetScatterplotDefinitionRequestYRumQuery; /** - * The type of view to use when displaying the widget. Only `detail` is supported. + * security_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#view_type Dashboard#view_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} */ - readonly viewType: string; + readonly securityQuery?: DashboardWidgetScatterplotDefinitionRequestYSecurityQuery; } -export function dashboardWidgetServiceLevelObjectiveDefinitionToTerraform(struct?: DashboardWidgetServiceLevelObjectiveDefinitionOutputReference | DashboardWidgetServiceLevelObjectiveDefinition): any { +export function dashboardWidgetScatterplotDefinitionRequestYToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestY | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - global_time_target: cdktf.stringToTerraform(struct!.globalTimeTarget), - show_error_budget: cdktf.booleanToTerraform(struct!.showErrorBudget), - slo_id: cdktf.stringToTerraform(struct!.sloId), - time_windows: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.timeWindows), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - view_mode: cdktf.stringToTerraform(struct!.viewMode), - view_type: cdktf.stringToTerraform(struct!.viewType), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetScatterplotDefinitionRequestYApmQueryToTerraform(struct!.apmQuery), + log_query: dashboardWidgetScatterplotDefinitionRequestYLogQueryToTerraform(struct!.logQuery), + process_query: dashboardWidgetScatterplotDefinitionRequestYProcessQueryToTerraform(struct!.processQuery), + rum_query: dashboardWidgetScatterplotDefinitionRequestYRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetScatterplotDefinitionRequestYSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetServiceLevelObjectiveDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestYOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetServiceLevelObjectiveDefinition | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionRequestY | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._globalTimeTarget !== undefined) { - hasAnyValues = true; - internalValueResult.globalTimeTarget = this._globalTimeTarget; - } - if (this._showErrorBudget !== undefined) { - hasAnyValues = true; - internalValueResult.showErrorBudget = this._showErrorBudget; - } - if (this._sloId !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.sloId = this._sloId; + internalValueResult.aggregator = this._aggregator; } - if (this._timeWindows !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.timeWindows = this._timeWindows; + internalValueResult.q = this._q; } - if (this._title !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.title = this._title; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._titleAlign !== undefined) { + if (this._logQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; + internalValueResult.logQuery = this._logQuery?.internalValue; } - if (this._titleSize !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.processQuery = this._processQuery?.internalValue; } - if (this._viewMode !== undefined) { + if (this._rumQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.viewMode = this._viewMode; + internalValueResult.rumQuery = this._rumQuery?.internalValue; } - if (this._viewType !== undefined) { + if (this._securityQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.viewType = this._viewType; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetServiceLevelObjectiveDefinition | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequestY | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._globalTimeTarget = undefined; - this._showErrorBudget = undefined; - this._sloId = undefined; - this._timeWindows = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._viewMode = undefined; - this._viewType = undefined; + this.resolvableValue = undefined; + this._aggregator = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._globalTimeTarget = value.globalTimeTarget; - this._showErrorBudget = value.showErrorBudget; - this._sloId = value.sloId; - this._timeWindows = value.timeWindows; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._viewMode = value.viewMode; - this._viewType = value.viewType; + this.resolvableValue = undefined; + this._aggregator = value.aggregator; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._logQuery.internalValue = value.logQuery; + this._processQuery.internalValue = value.processQuery; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // global_time_target - computed: false, optional: true, required: false - private _globalTimeTarget?: string; - public get globalTimeTarget() { - return this.getStringAttribute('global_time_target'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set globalTimeTarget(value: string) { - this._globalTimeTarget = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetGlobalTimeTarget() { - this._globalTimeTarget = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get globalTimeTargetInput() { - return this._globalTimeTarget; + public get aggregatorInput() { + return this._aggregator; } - // show_error_budget - computed: false, optional: true, required: false - private _showErrorBudget?: boolean | cdktf.IResolvable; - public get showErrorBudget() { - return this.getBooleanAttribute('show_error_budget'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set showErrorBudget(value: boolean | cdktf.IResolvable) { - this._showErrorBudget = value; + public set q(value: string) { + this._q = value; } - public resetShowErrorBudget() { - this._showErrorBudget = undefined; + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get showErrorBudgetInput() { - return this._showErrorBudget; + public get qInput() { + return this._q; } - // slo_id - computed: false, optional: false, required: true - private _sloId?: string; - public get sloId() { - return this.getStringAttribute('slo_id'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetScatterplotDefinitionRequestYApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set sloId(value: string) { - this._sloId = value; + public putApmQuery(value: DashboardWidgetScatterplotDefinitionRequestYApmQuery) { + this._apmQuery.internalValue = value; + } + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sloIdInput() { - return this._sloId; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // time_windows - computed: false, optional: false, required: true - private _timeWindows?: string[]; - public get timeWindows() { - return this.getListAttribute('time_windows'); + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetScatterplotDefinitionRequestYLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; } - public set timeWindows(value: string[]) { - this._timeWindows = value; + public putLogQuery(value: DashboardWidgetScatterplotDefinitionRequestYLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get timeWindowsInput() { - return this._timeWindows; + public get logQueryInput() { + return this._logQuery.internalValue; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetScatterplotDefinitionRequestYProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public set title(value: string) { - this._title = value; + public putProcessQuery(value: DashboardWidgetScatterplotDefinitionRequestYProcessQuery) { + this._processQuery.internalValue = value; } - public resetTitle() { - this._title = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get processQueryInput() { + return this._processQuery.internalValue; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetScatterplotDefinitionRequestYRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public set titleAlign(value: string) { - this._titleAlign = value; + public putRumQuery(value: DashboardWidgetScatterplotDefinitionRequestYRumQuery) { + this._rumQuery.internalValue = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetScatterplotDefinitionRequestYSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public resetTitleSize() { - this._titleSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; - } - - // view_mode - computed: false, optional: false, required: true - private _viewMode?: string; - public get viewMode() { - return this.getStringAttribute('view_mode'); + public putSecurityQuery(value: DashboardWidgetScatterplotDefinitionRequestYSecurityQuery) { + this._securityQuery.internalValue = value; } - public set viewMode(value: string) { - this._viewMode = value; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get viewModeInput() { - return this._viewMode; + public get securityQueryInput() { + return this._securityQuery.internalValue; } +} - // view_type - computed: false, optional: false, required: true - private _viewType?: string; - public get viewType() { - return this.getStringAttribute('view_type'); - } - public set viewType(value: string) { - this._viewType = value; - } - // Temporarily expose input value. Use with caution. - public get viewTypeInput() { - return this._viewType; +export class DashboardWidgetScatterplotDefinitionRequestYList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetScatterplotDefinitionRequestY[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } -} -export interface DashboardWidgetServicemapDefinitionCustomLink { + /** - * The flag for toggling context menu link visibility. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * @param index the index of the item to return */ - readonly isHidden?: boolean | cdktf.IResolvable; + public get(index: number): DashboardWidgetScatterplotDefinitionRequestYOutputReference { + return new DashboardWidgetScatterplotDefinitionRequestYOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetScatterplotDefinitionRequest { /** - * The label for the custom link URL. + * scatterplot_table block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scatterplot_table Dashboard#scatterplot_table} */ - readonly label?: string; + readonly scatterplotTable?: DashboardWidgetScatterplotDefinitionRequestScatterplotTable[] | cdktf.IResolvable; /** - * The URL of the custom link. + * x block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#x Dashboard#x} */ - readonly link?: string; + readonly x?: DashboardWidgetScatterplotDefinitionRequestX[] | cdktf.IResolvable; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * y block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#y Dashboard#y} */ - readonly overrideLabel?: string; + readonly y?: DashboardWidgetScatterplotDefinitionRequestY[] | cdktf.IResolvable; } -export function dashboardWidgetServicemapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetServicemapDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionRequestToTerraform(struct?: DashboardWidgetScatterplotDefinitionRequestOutputReference | DashboardWidgetScatterplotDefinitionRequest): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + scatterplot_table: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestScatterplotTableToTerraform, true)(struct!.scatterplotTable), + x: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestXToTerraform, true)(struct!.x), + y: cdktf.listMapper(dashboardWidgetScatterplotDefinitionRequestYToTerraform, true)(struct!.y), } } -export class DashboardWidgetServicemapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetServicemapDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionRequest | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { - hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; - } - if (this._label !== undefined) { + if (this._scatterplotTable?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.scatterplotTable = this._scatterplotTable?.internalValue; } - if (this._link !== undefined) { + if (this._x?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.x = this._x?.internalValue; } - if (this._overrideLabel !== undefined) { + if (this._y?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.y = this._y?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetServicemapDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionRequest | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._scatterplotTable.internalValue = undefined; + this._x.internalValue = undefined; + this._y.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._scatterplotTable.internalValue = value.scatterplotTable; + this._x.internalValue = value.x; + this._y.internalValue = value.y; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); - } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; - } - public resetIsHidden() { - this._isHidden = undefined; - } - // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; - } - - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // scatterplot_table - computed: false, optional: true, required: false + private _scatterplotTable = new DashboardWidgetScatterplotDefinitionRequestScatterplotTableList(this, "scatterplot_table", false); + public get scatterplotTable() { + return this._scatterplotTable; } - public set label(value: string) { - this._label = value; + public putScatterplotTable(value: DashboardWidgetScatterplotDefinitionRequestScatterplotTable[] | cdktf.IResolvable) { + this._scatterplotTable.internalValue = value; } - public resetLabel() { - this._label = undefined; + public resetScatterplotTable() { + this._scatterplotTable.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get scatterplotTableInput() { + return this._scatterplotTable.internalValue; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // x - computed: false, optional: true, required: false + private _x = new DashboardWidgetScatterplotDefinitionRequestXList(this, "x", false); + public get x() { + return this._x; } - public set link(value: string) { - this._link = value; + public putX(value: DashboardWidgetScatterplotDefinitionRequestX[] | cdktf.IResolvable) { + this._x.internalValue = value; } - public resetLink() { - this._link = undefined; + public resetX() { + this._x.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get xInput() { + return this._x.internalValue; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // y - computed: false, optional: true, required: false + private _y = new DashboardWidgetScatterplotDefinitionRequestYList(this, "y", false); + public get y() { + return this._y; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putY(value: DashboardWidgetScatterplotDefinitionRequestY[] | cdktf.IResolvable) { + this._y.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetY() { + this._y.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get yInput() { + return this._y.internalValue; } } - -export class DashboardWidgetServicemapDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetServicemapDefinitionCustomLink[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - +export interface DashboardWidgetScatterplotDefinitionXaxis { /** - * @param index the index of the item to return + * Always include zero or fit the axis to the data range. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - public get(index: number): DashboardWidgetServicemapDefinitionCustomLinkOutputReference { - return new DashboardWidgetServicemapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetServicemapDefinition { + readonly includeZero?: boolean | cdktf.IResolvable; /** - * Your environment and primary tag (or `*` if enabled for your account). + * The label of the axis to display on the graph. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filters Dashboard#filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly filters: string[]; + readonly label?: string; /** - * The ID of the service to map. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly service: string; + readonly max?: string; /** - * The title of the widget. + * Specify the minimum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} */ - readonly title?: string; + readonly min?: string; /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; - /** - * The size of the widget's title (defaults to 16). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} - */ - readonly titleSize?: string; - /** - * custom_link block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} */ - readonly customLink?: DashboardWidgetServicemapDefinitionCustomLink[] | cdktf.IResolvable; + readonly scale?: string; } -export function dashboardWidgetServicemapDefinitionToTerraform(struct?: DashboardWidgetServicemapDefinitionOutputReference | DashboardWidgetServicemapDefinition): any { +export function dashboardWidgetScatterplotDefinitionXaxisToTerraform(struct?: DashboardWidgetScatterplotDefinitionXaxisOutputReference | DashboardWidgetScatterplotDefinitionXaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filters), - service: cdktf.stringToTerraform(struct!.service), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetServicemapDefinitionCustomLinkToTerraform, true)(struct!.customLink), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), + label: cdktf.stringToTerraform(struct!.label), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetServicemapDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionXaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -1961,263 +1394,248 @@ export class DashboardWidgetServicemapDefinitionOutputReference extends cdktf.Co super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetServicemapDefinition | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinitionXaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filters !== undefined) { - hasAnyValues = true; - internalValueResult.filters = this._filters; - } - if (this._service !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.includeZero = this._includeZero; } - if (this._title !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.title = this._title; + internalValueResult.label = this._label; } - if (this._titleAlign !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; + internalValueResult.max = this._max; } - if (this._titleSize !== undefined) { + if (this._min !== undefined) { hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; + internalValueResult.min = this._min; } - if (this._customLink?.internalValue !== undefined) { + if (this._scale !== undefined) { hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetServicemapDefinition | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionXaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filters = undefined; - this._service = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; + this._includeZero = undefined; + this._label = undefined; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filters = value.filters; - this._service = value.service; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; + this._includeZero = value.includeZero; + this._label = value.label; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // filters - computed: false, optional: false, required: true - private _filters?: string[]; - public get filters() { - return this.getListAttribute('filters'); - } - public set filters(value: string[]) { - this._filters = value; - } - // Temporarily expose input value. Use with caution. - public get filtersInput() { - return this._filters; + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; } - public set service(value: string) { - this._service = value; + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + public get includeZeroInput() { + return this._includeZero; } - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set title(value: string) { - this._title = value; + public set label(value: string) { + this._label = value; } - public resetTitle() { - this._title = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + public get labelInput() { + return this._label; } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set titleAlign(value: string) { - this._titleAlign = value; + public set max(value: string) { + this._max = value; } - public resetTitleAlign() { - this._titleAlign = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get maxInput() { + return this._max; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); } - public set titleSize(value: string) { - this._titleSize = value; + public set min(value: string) { + this._min = value; } - public resetTitleSize() { - this._titleSize = undefined; + public resetMin() { + this._min = undefined; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get minInput() { + return this._min; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetServicemapDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); } - public putCustomLink(value: DashboardWidgetServicemapDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public set scale(value: string) { + this._scale = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetScale() { + this._scale = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get scaleInput() { + return this._scale; } } -export interface DashboardWidgetSunburstDefinitionCustomLink { +export interface DashboardWidgetScatterplotDefinitionYaxis { /** - * The flag for toggling context menu link visibility. + * Always include zero or fit the axis to the data range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly includeZero?: boolean | cdktf.IResolvable; /** - * The label for the custom link URL. + * The label of the axis to display on the graph. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ readonly label?: string; /** - * The URL of the custom link. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly link?: string; + readonly max?: string; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * Specify the minimum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} */ - readonly overrideLabel?: string; + readonly min?: string; + /** + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + */ + readonly scale?: string; } -export function dashboardWidgetSunburstDefinitionCustomLinkToTerraform(struct?: DashboardWidgetSunburstDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetScatterplotDefinitionYaxisToTerraform(struct?: DashboardWidgetScatterplotDefinitionYaxisOutputReference | DashboardWidgetScatterplotDefinitionYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetSunburstDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetScatterplotDefinitionYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.includeZero = this._includeZero; } if (this._label !== undefined) { hasAnyValues = true; internalValueResult.label = this._label; } - if (this._link !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.max = this._max; } - if (this._overrideLabel !== undefined) { + if (this._min !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.min = this._min; } - return hasAnyValues ? internalValueResult : undefined; - } + if (this._scale !== undefined) { + hasAnyValues = true; + internalValueResult.scale = this._scale; + } + return hasAnyValues ? internalValueResult : undefined; + } - public set internalValue(value: DashboardWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinitionYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; + this._includeZero = undefined; this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; + this._includeZero = value.includeZero; this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; } - public resetIsHidden() { - this._isHidden = undefined; + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get includeZeroInput() { + return this._includeZero; } // label - computed: false, optional: true, required: false @@ -2236,92 +1654,130 @@ export class DashboardWidgetSunburstDefinitionCustomLinkOutputReference extends return this._label; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set link(value: string) { - this._link = value; + public set max(value: string) { + this._max = value; } - public resetLink() { - this._link = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get maxInput() { + return this._max; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public set min(value: string) { + this._min = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetMin() { + this._min = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get minInput() { + return this._min; } -} - -export class DashboardWidgetSunburstDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); + } + public set scale(value: string) { + this._scale = value; + } + public resetScale() { + this._scale = undefined; + } + // Temporarily expose input value. Use with caution. + public get scaleInput() { + return this._scale; + } +} +export interface DashboardWidgetScatterplotDefinition { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * List of groups used for colors. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#color_by_groups Dashboard#color_by_groups} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly colorByGroups?: string[]; /** - * @param index the index of the item to return + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - public get(index: number): DashboardWidgetSunburstDefinitionCustomLinkOutputReference { - return new DashboardWidgetSunburstDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetSunburstDefinitionLegendInline { + readonly liveSpan?: string; /** - * Whether to hide the percentages of the groups. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_percent Dashboard#hide_percent} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly hidePercent?: boolean | cdktf.IResolvable; + readonly title?: string; /** - * Whether to hide the values of the groups. + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly hideValue?: boolean | cdktf.IResolvable; + readonly titleAlign?: string; /** - * The type of legend (inline or automatic). Valid values are `inline`, `automatic`. + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly type: string; + readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetScatterplotDefinitionCustomLink[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetScatterplotDefinitionRequest; + /** + * xaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#xaxis Dashboard#xaxis} + */ + readonly xaxis?: DashboardWidgetScatterplotDefinitionXaxis; + /** + * yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + */ + readonly yaxis?: DashboardWidgetScatterplotDefinitionYaxis; } -export function dashboardWidgetSunburstDefinitionLegendInlineToTerraform(struct?: DashboardWidgetSunburstDefinitionLegendInlineOutputReference | DashboardWidgetSunburstDefinitionLegendInline): any { +export function dashboardWidgetScatterplotDefinitionToTerraform(struct?: DashboardWidgetScatterplotDefinitionOutputReference | DashboardWidgetScatterplotDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - hide_percent: cdktf.booleanToTerraform(struct!.hidePercent), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - type: cdktf.stringToTerraform(struct!.type), + color_by_groups: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.colorByGroups), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetScatterplotDefinitionCustomLinkToTerraform, true)(struct!.customLink), + request: dashboardWidgetScatterplotDefinitionRequestToTerraform(struct!.request), + xaxis: dashboardWidgetScatterplotDefinitionXaxisToTerraform(struct!.xaxis), + yaxis: dashboardWidgetScatterplotDefinitionYaxisToTerraform(struct!.yaxis), } } -export class DashboardWidgetSunburstDefinitionLegendInlineOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetScatterplotDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -2332,182 +1788,295 @@ export class DashboardWidgetSunburstDefinitionLegendInlineOutputReference extend super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionLegendInline | undefined { + public get internalValue(): DashboardWidgetScatterplotDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._hidePercent !== undefined) { + if (this._colorByGroups !== undefined) { hasAnyValues = true; - internalValueResult.hidePercent = this._hidePercent; + internalValueResult.colorByGroups = this._colorByGroups; } - if (this._hideValue !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; + internalValueResult.liveSpan = this._liveSpan; } - if (this._type !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.type = this._type; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } + if (this._xaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.xaxis = this._xaxis?.internalValue; + } + if (this._yaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.yaxis = this._yaxis?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionLegendInline | undefined) { + public set internalValue(value: DashboardWidgetScatterplotDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._hidePercent = undefined; - this._hideValue = undefined; - this._type = undefined; + this._colorByGroups = undefined; + this._liveSpan = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._request.internalValue = undefined; + this._xaxis.internalValue = undefined; + this._yaxis.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._hidePercent = value.hidePercent; - this._hideValue = value.hideValue; - this._type = value.type; + this._colorByGroups = value.colorByGroups; + this._liveSpan = value.liveSpan; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._request.internalValue = value.request; + this._xaxis.internalValue = value.xaxis; + this._yaxis.internalValue = value.yaxis; } } - // hide_percent - computed: false, optional: true, required: false - private _hidePercent?: boolean | cdktf.IResolvable; - public get hidePercent() { - return this.getBooleanAttribute('hide_percent'); + // color_by_groups - computed: false, optional: true, required: false + private _colorByGroups?: string[]; + public get colorByGroups() { + return this.getListAttribute('color_by_groups'); } - public set hidePercent(value: boolean | cdktf.IResolvable) { - this._hidePercent = value; + public set colorByGroups(value: string[]) { + this._colorByGroups = value; } - public resetHidePercent() { - this._hidePercent = undefined; + public resetColorByGroups() { + this._colorByGroups = undefined; } // Temporarily expose input value. Use with caution. - public get hidePercentInput() { - return this._hidePercent; + public get colorByGroupsInput() { + return this._colorByGroups; } - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + public set liveSpan(value: string) { + this._liveSpan = value; } - public resetHideValue() { - this._hideValue = undefined; + public resetLiveSpan() { + this._liveSpan = undefined; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get liveSpanInput() { + return this._liveSpan; } - // type - computed: false, optional: false, required: true - private _type?: string; - public get type() { - return this.getStringAttribute('type'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set type(value: string) { - this._type = value; + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get typeInput() { - return this._type; + public get titleInput() { + return this._title; } -} -export interface DashboardWidgetSunburstDefinitionLegendTable { - /** - * The type of legend (table or none). Valid values are `table`, `none`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} - */ - readonly type: string; -} -export function dashboardWidgetSunburstDefinitionLegendTableToTerraform(struct?: DashboardWidgetSunburstDefinitionLegendTableOutputReference | DashboardWidgetSunburstDefinitionLegendTable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - return { - type: cdktf.stringToTerraform(struct!.type), + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; } -} -export class DashboardWidgetSunburstDefinitionLegendTableOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetScatterplotDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetScatterplotDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; } - public get internalValue(): DashboardWidgetSunburstDefinitionLegendTable | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._type !== undefined) { - hasAnyValues = true; - internalValueResult.type = this._type; - } - return hasAnyValues ? internalValueResult : undefined; + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetScatterplotDefinitionRequestOutputReference(this, "request"); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetScatterplotDefinitionRequest) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; } - public set internalValue(value: DashboardWidgetSunburstDefinitionLegendTable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._type = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._type = value.type; - } + // xaxis - computed: false, optional: true, required: false + private _xaxis = new DashboardWidgetScatterplotDefinitionXaxisOutputReference(this, "xaxis"); + public get xaxis() { + return this._xaxis; + } + public putXaxis(value: DashboardWidgetScatterplotDefinitionXaxis) { + this._xaxis.internalValue = value; + } + public resetXaxis() { + this._xaxis.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get xaxisInput() { + return this._xaxis.internalValue; } - // type - computed: false, optional: false, required: true - private _type?: string; - public get type() { - return this.getStringAttribute('type'); + // yaxis - computed: false, optional: true, required: false + private _yaxis = new DashboardWidgetScatterplotDefinitionYaxisOutputReference(this, "yaxis"); + public get yaxis() { + return this._yaxis; } - public set type(value: string) { - this._type = value; + public putYaxis(value: DashboardWidgetScatterplotDefinitionYaxis) { + this._yaxis.internalValue = value; + } + public resetYaxis() { + this._yaxis.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get typeInput() { - return this._type; + public get yaxisInput() { + return this._yaxis.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery { +export interface DashboardWidgetServiceLevelObjectiveDefinition { /** - * The aggregation method. + * The global time target of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#global_time_target Dashboard#global_time_target} */ - readonly aggregation: string; + readonly globalTimeTarget?: string; /** - * The facet name. + * Whether to show the error budget or not. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_error_budget Dashboard#show_error_budget} */ - readonly facet?: string; + readonly showErrorBudget?: boolean | cdktf.IResolvable; /** - * Define the time interval in seconds. + * The ID of the service level objective used by the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#slo_id Dashboard#slo_id} */ - readonly interval?: number; + readonly sloId: string; + /** + * A list of time windows to display in the widget. Valid values are `7d`, `30d`, `90d`, `week_to_date`, `previous_week`, `month_to_date`, `previous_month`, `global_time`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#time_windows Dashboard#time_windows} + */ + readonly timeWindows: string[]; + /** + * The title of the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + */ + readonly title?: string; + /** + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; + /** + * The view mode for the widget. Valid values are `overall`, `component`, `both`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#view_mode Dashboard#view_mode} + */ + readonly viewMode: string; + /** + * The type of view to use when displaying the widget. Only `detail` is supported. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#view_type Dashboard#view_type} + */ + readonly viewType: string; } -export function dashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetServiceLevelObjectiveDefinitionToTerraform(struct?: DashboardWidgetServiceLevelObjectiveDefinitionOutputReference | DashboardWidgetServiceLevelObjectiveDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + global_time_target: cdktf.stringToTerraform(struct!.globalTimeTarget), + show_error_budget: cdktf.booleanToTerraform(struct!.showErrorBudget), + slo_id: cdktf.stringToTerraform(struct!.sloId), + time_windows: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.timeWindows), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + view_mode: cdktf.stringToTerraform(struct!.viewMode), + view_type: cdktf.stringToTerraform(struct!.viewType), } } -export class DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetServiceLevelObjectiveDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -2518,562 +2087,823 @@ export class DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputR super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetServiceLevelObjectiveDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._globalTimeTarget !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.globalTimeTarget = this._globalTimeTarget; } - if (this._facet !== undefined) { + if (this._showErrorBudget !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.showErrorBudget = this._showErrorBudget; } - if (this._interval !== undefined) { + if (this._sloId !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.sloId = this._sloId; + } + if (this._timeWindows !== undefined) { + hasAnyValues = true; + internalValueResult.timeWindows = this._timeWindows; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._viewMode !== undefined) { + hasAnyValues = true; + internalValueResult.viewMode = this._viewMode; + } + if (this._viewType !== undefined) { + hasAnyValues = true; + internalValueResult.viewType = this._viewType; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetServiceLevelObjectiveDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._globalTimeTarget = undefined; + this._showErrorBudget = undefined; + this._sloId = undefined; + this._timeWindows = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._viewMode = undefined; + this._viewType = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._globalTimeTarget = value.globalTimeTarget; + this._showErrorBudget = value.showErrorBudget; + this._sloId = value.sloId; + this._timeWindows = value.timeWindows; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._viewMode = value.viewMode; + this._viewType = value.viewType; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // global_time_target - computed: false, optional: true, required: false + private _globalTimeTarget?: string; + public get globalTimeTarget() { + return this.getStringAttribute('global_time_target'); } - public set aggregation(value: string) { - this._aggregation = value; + public set globalTimeTarget(value: string) { + this._globalTimeTarget = value; + } + public resetGlobalTimeTarget() { + this._globalTimeTarget = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get globalTimeTargetInput() { + return this._globalTimeTarget; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // show_error_budget - computed: false, optional: true, required: false + private _showErrorBudget?: boolean | cdktf.IResolvable; + public get showErrorBudget() { + return this.getBooleanAttribute('show_error_budget'); } - public set facet(value: string) { - this._facet = value; + public set showErrorBudget(value: boolean | cdktf.IResolvable) { + this._showErrorBudget = value; } - public resetFacet() { - this._facet = undefined; + public resetShowErrorBudget() { + this._showErrorBudget = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get showErrorBudgetInput() { + return this._showErrorBudget; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // slo_id - computed: false, optional: false, required: true + private _sloId?: string; + public get sloId() { + return this.getStringAttribute('slo_id'); } - public set interval(value: number) { - this._interval = value; + public set sloId(value: string) { + this._sloId = value; } - public resetInterval() { - this._interval = undefined; + // Temporarily expose input value. Use with caution. + public get sloIdInput() { + return this._sloId; + } + + // time_windows - computed: false, optional: false, required: true + private _timeWindows?: string[]; + public get timeWindows() { + return this.getListAttribute('time_windows'); + } + public set timeWindows(value: string[]) { + this._timeWindows = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get timeWindowsInput() { + return this._timeWindows; + } + + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); + } + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; + } + + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } + + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; + } + + // view_mode - computed: false, optional: false, required: true + private _viewMode?: string; + public get viewMode() { + return this.getStringAttribute('view_mode'); + } + public set viewMode(value: string) { + this._viewMode = value; + } + // Temporarily expose input value. Use with caution. + public get viewModeInput() { + return this._viewMode; + } + + // view_type - computed: false, optional: false, required: true + private _viewType?: string; + public get viewType() { + return this.getStringAttribute('view_type'); + } + public set viewType(value: string) { + this._viewType = value; + } + // Temporarily expose input value. Use with caution. + public get viewTypeInput() { + return this._viewType; } } -export interface DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery { +export interface DashboardWidgetServicemapDefinitionCustomLink { /** - * The aggregation method. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly aggregation: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The facet name. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly facet?: string; + readonly label?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly order: string; + readonly link?: string; + /** + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + */ + readonly overrideLabel?: string; } -export function dashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery): any { +export function dashboardWidgetServicemapDefinitionCustomLinkToTerraform(struct?: DashboardWidgetServicemapDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetServicemapDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + public get internalValue(): DashboardWidgetServicemapDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.isHidden = this._isHidden; } - if (this._facet !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.label = this._label; } - if (this._order !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetServicemapDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set aggregation(value: string) { - this._aggregation = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get isHiddenInput() { + return this._isHidden; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set facet(value: string) { - this._facet = value; + public set label(value: string) { + this._label = value; } - public resetFacet() { - this._facet = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get labelInput() { + return this._label; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public set order(value: string) { - this._order = value; + public set link(value: string) { + this._link = value; + } + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get linkInput() { + return this._link; + } + + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); + } + public set overrideLabel(value: string) { + this._overrideLabel = value; + } + public resetOverrideLabel() { + this._overrideLabel = undefined; + } + // Temporarily expose input value. Use with caution. + public get overrideLabelInput() { + return this._overrideLabel; } } -export interface DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy { + +export class DashboardWidgetServicemapDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetServicemapDefinitionCustomLink[] | cdktf.IResolvable + /** - * The facet name. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetServicemapDefinitionCustomLinkOutputReference { + return new DashboardWidgetServicemapDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetServicemapDefinition { + /** + * Your environment and primary tag (or `*` if enabled for your account). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filters Dashboard#filters} */ - readonly facet?: string; + readonly filters: string[]; /** - * The maximum number of items in the group. + * The ID of the service to map. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} */ - readonly limit?: number; + readonly service: string; /** - * sort_query block + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery; + readonly title?: string; + /** + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetServicemapDefinitionCustomLink[] | cdktf.IResolvable; } -export function dashboardWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetServicemapDefinitionToTerraform(struct?: DashboardWidgetServicemapDefinitionOutputReference | DashboardWidgetServicemapDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filters), + service: cdktf.stringToTerraform(struct!.service), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetServicemapDefinitionCustomLinkToTerraform, true)(struct!.customLink), } } -export class DashboardWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetServicemapDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetServicemapDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._filters !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.filters = this._filters; } - if (this._limit !== undefined) { + if (this._service !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.service = this._service; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetServicemapDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._filters = undefined; + this._service = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._filters = value.filters; + this._service = value.service; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // filters - computed: false, optional: false, required: true + private _filters?: string[]; + public get filters() { + return this.getListAttribute('filters'); } - public resetFacet() { - this._facet = undefined; + public set filters(value: string[]) { + this._filters = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get filtersInput() { + return this._filters; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); } - public resetLimit() { - this._limit = undefined; + public set service(value: string) { + this._service = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get serviceInput() { + return this._service; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set title(value: string) { + this._title = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get titleInput() { + return this._title; } -} -export class DashboardWidgetSunburstDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetServicemapDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetServicemapDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; +export interface DashboardWidgetSloListDefinitionRequestQuery { /** - * The facet name. + * Maximum number of results to display in the table. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly facet?: string; + readonly limit?: number; /** - * Define the time interval in seconds. + * Widget query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_string Dashboard#query_string} */ - readonly interval?: number; + readonly queryString: string; } -export function dashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSloListDefinitionRequestQueryToTerraform(struct?: DashboardWidgetSloListDefinitionRequestQueryOutputReference | DashboardWidgetSloListDefinitionRequestQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + limit: cdktf.numberToTerraform(struct!.limit), + query_string: cdktf.stringToTerraform(struct!.queryString), } } -export class DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSloListDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSloListDefinitionRequestQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.limit = this._limit; } - if (this._interval !== undefined) { + if (this._queryString !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.queryString = this._queryString; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSloListDefinitionRequestQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._limit = undefined; + this._queryString = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._limit = value.limit; + this._queryString = value.queryString; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set aggregation(value: string) { - this._aggregation = value; + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get limitInput() { + return this._limit; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // query_string - computed: false, optional: false, required: true + private _queryString?: string; + public get queryString() { + return this.getStringAttribute('query_string'); } - public resetFacet() { - this._facet = undefined; + public set queryString(value: string) { + this._queryString = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get queryStringInput() { + return this._queryString; } +} +export interface DashboardWidgetSloListDefinitionRequest { + /** + * The request type for the SLO List request. Valid values are `slo_list`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request_type Dashboard#request_type} + */ + readonly requestType: string; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: DashboardWidgetSloListDefinitionRequestQuery; +} - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; +export function dashboardWidgetSloListDefinitionRequestToTerraform(struct?: DashboardWidgetSloListDefinitionRequestOutputReference | DashboardWidgetSloListDefinitionRequest): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + return { + request_type: cdktf.stringToTerraform(struct!.requestType), + query: dashboardWidgetSloListDefinitionRequestQueryToTerraform(struct!.query), } } -export class DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetSloListDefinitionRequestOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get internalValue(): DashboardWidgetSloListDefinitionRequest | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._requestType !== undefined) { + hasAnyValues = true; + internalValueResult.requestType = this._requestType; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; } -} -export interface DashboardWidgetSunburstDefinitionRequestApmQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. + + public set internalValue(value: DashboardWidgetSloListDefinitionRequest | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._requestType = undefined; + this._query.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._requestType = value.requestType; + this._query.internalValue = value.query; + } + } + + // request_type - computed: false, optional: false, required: true + private _requestType?: string; + public get requestType() { + return this.getStringAttribute('request_type'); + } + public set requestType(value: string) { + this._requestType = value; + } + // Temporarily expose input value. Use with caution. + public get requestTypeInput() { + return this._requestType; + } + + // query - computed: false, optional: false, required: true + private _query = new DashboardWidgetSloListDefinitionRequestQueryOutputReference(this, "query"); + public get query() { + return this._query; + } + public putQuery(value: DashboardWidgetSloListDefinitionRequestQuery) { + this._query.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get queryInput() { + return this._query.internalValue; + } +} +export interface DashboardWidgetSloListDefinition { + /** + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly searchQuery?: string; + readonly title?: string; /** - * compute_query block + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery; + readonly titleAlign?: string; /** - * group_by block + * The size of the widget's title (defaults to 16). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly titleSize?: string; /** - * multi_compute block + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly request: DashboardWidgetSloListDefinitionRequest; } -export function dashboardWidgetSunburstDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference | DashboardWidgetSunburstDefinitionRequestApmQuery): any { +export function dashboardWidgetSloListDefinitionToTerraform(struct?: DashboardWidgetSloListDefinitionOutputReference | DashboardWidgetSloListDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + request: dashboardWidgetSloListDefinitionRequestToTerraform(struct!.request), } } -export class DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSloListDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3084,284 +2914,326 @@ export class DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference ext super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetSloListDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.title = this._title; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.titleAlign = this._titleAlign; } - if (this._groupBy?.internalValue !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.titleSize = this._titleSize; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._request?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetSloListDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._request.internalValue = value.request; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set title(value: string) { + this._title = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get titleInput() { + return this._title; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get titleAlignInput() { + return this._titleAlign; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestApmQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get titleSizeInput() { + return this._titleSize; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // request - computed: false, optional: false, required: true + private _request = new DashboardWidgetSloListDefinitionRequestOutputReference(this, "request"); + public get request() { + return this._request; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public putRequest(value: DashboardWidgetSloListDefinitionRequest) { + this._request.internalValue = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get requestInput() { + return this._request.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionCustomLink { /** - * The aggregation method. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly aggregation: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The facet name. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly facet?: string; + readonly label?: string; /** - * Define the time interval in seconds. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly interval?: number; + readonly link?: string; + /** + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + */ + readonly overrideLabel?: string; } -export function dashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery): any { +export function dashboardWidgetSunburstDefinitionCustomLinkToTerraform(struct?: DashboardWidgetSunburstDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.isHidden = this._isHidden; } - if (this._facet !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.label = this._label; } - if (this._interval !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set aggregation(value: string) { - this._aggregation = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get isHiddenInput() { + return this._isHidden; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set facet(value: string) { - this._facet = value; + public set label(value: string) { + this._label = value; } - public resetFacet() { - this._facet = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get labelInput() { + return this._label; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - public set interval(value: number) { - this._interval = value; + public set link(value: string) { + this._link = value; } - public resetInterval() { - this._interval = undefined; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get linkInput() { + return this._link; + } + + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); + } + public set overrideLabel(value: string) { + this._overrideLabel = value; + } + public resetOverrideLabel() { + this._overrideLabel = undefined; + } + // Temporarily expose input value. Use with caution. + public get overrideLabelInput() { + return this._overrideLabel; } } -export interface DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery { + +export class DashboardWidgetSunburstDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionCustomLinkOutputReference { + return new DashboardWidgetSunburstDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetSunburstDefinitionLegendInline { + /** + * Whether to hide the percentages of the groups. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_percent Dashboard#hide_percent} */ - readonly aggregation: string; + readonly hidePercent?: boolean | cdktf.IResolvable; /** - * The facet name. + * Whether to hide the values of the groups. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} */ - readonly facet?: string; + readonly hideValue?: boolean | cdktf.IResolvable; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The type of legend (inline or automatic). Valid values are `inline`, `automatic`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} */ - readonly order: string; + readonly type: string; } -export function dashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery): any { +export function dashboardWidgetSunburstDefinitionLegendInlineToTerraform(struct?: DashboardWidgetSunburstDefinitionLegendInlineOutputReference | DashboardWidgetSunburstDefinitionLegendInline): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + hide_percent: cdktf.booleanToTerraform(struct!.hidePercent), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + type: cdktf.stringToTerraform(struct!.type), } } -export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionLegendInlineOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3372,239 +3244,149 @@ export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionLegendInline | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._hidePercent !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.hidePercent = this._hidePercent; } - if (this._facet !== undefined) { + if (this._hideValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.hideValue = this._hideValue; } - if (this._order !== undefined) { + if (this._type !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionLegendInline | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._hidePercent = undefined; + this._hideValue = undefined; + this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._hidePercent = value.hidePercent; + this._hideValue = value.hideValue; + this._type = value.type; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // hide_percent - computed: false, optional: true, required: false + private _hidePercent?: boolean | cdktf.IResolvable; + public get hidePercent() { + return this.getBooleanAttribute('hide_percent'); } - public set aggregation(value: string) { - this._aggregation = value; + public set hidePercent(value: boolean | cdktf.IResolvable) { + this._hidePercent = value; + } + public resetHidePercent() { + this._hidePercent = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get hidePercentInput() { + return this._hidePercent; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public set facet(value: string) { - this._facet = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } - public resetFacet() { - this._facet = undefined; + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get hideValueInput() { + return this._hideValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // type - computed: false, optional: false, required: true + private _type?: string; + public get type() { + return this.getStringAttribute('type'); } - public set order(value: string) { - this._order = value; + public set type(value: string) { + this._type = value; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get typeInput() { + return this._type; } } -export interface DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; +export interface DashboardWidgetSunburstDefinitionLegendTable { /** - * sort_query block + * The type of legend (table or none). Valid values are `table`, `none`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#type Dashboard#type} */ - readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery; + readonly type: string; } -export function dashboardWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionLegendTableToTerraform(struct?: DashboardWidgetSunburstDefinitionLegendTableOutputReference | DashboardWidgetSunburstDefinitionLegendTable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), + type: cdktf.stringToTerraform(struct!.type), } } -export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionLegendTableOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionLegendTable | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { + if (this._type !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionLegendTable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._type = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._type = value.type; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; - } - public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + // type - computed: false, optional: false, required: true + private _type?: string; + public get type() { + return this.getStringAttribute('type'); } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public set type(value: string) { + this._type = value; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; - } -} - -export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get typeInput() { + return this._type; } } -export interface DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute { +export interface DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery { /** * The aggregation method. * @@ -3625,7 +3407,7 @@ export interface DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -3637,24 +3419,18 @@ export function dashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeTo } } -export class DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -3672,21 +3448,15 @@ export class DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -3738,74 +3508,40 @@ export class DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutpu return this._interval; } } - -export class DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetSunburstDefinitionRequestAuditQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference | DashboardWidgetSunburstDefinitionRequestAuditQuery): any { +export function dashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -3816,204 +3552,115 @@ export class DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set index(value: string) { - this._index = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery) { - this._computeQuery.internalValue = value; - } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; - /** - * The metric from the request to correlate with this conditional format. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; +export interface DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy { /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly palette: string; + readonly facet?: string; /** - * Defines the displayed timeframe. + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly timeframe?: string; + readonly limit?: number; /** - * A value for the comparator. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly value: number; + readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -4027,64 +3674,34 @@ export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._palette !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.facet = this._facet; } - if (this._timeframe !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.limit = this._limit; } - if (this._value !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -4093,156 +3710,63 @@ export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOu else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set comparator(value: string) { - this._comparator = value; + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; + public get facetInput() { + return this._facet; } - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set customBgColor(value: string) { - this._customBgColor = value; + public set limit(value: number) { + this._limit = value; } - public resetCustomBgColor() { - this._customBgColor = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; + public get limitInput() { + return this._limit; } - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); - } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; - } - public resetHideValue() { - this._hideValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; - } - - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); - } - public set imageUrl(value: string) { - this._imageUrl = value; - } - public resetImageUrl() { - this._imageUrl = undefined; - } - // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; - } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); - } - public set palette(value: string) { - this._palette = value; - } - // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; - } - - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; - } - public resetTimeframe() { - this._timeframe = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; - } - - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public set value(value: number) { - this._value = value; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4256,319 +3780,345 @@ export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsLi /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestFormulaLimit { +export interface DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute { /** - * The number of results to return + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly count?: number; + readonly aggregation: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly order?: string; + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestFormulaLimitOutputReference | DashboardWidgetSunburstDefinitionRequestFormulaLimit): any { +export function dashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetSunburstDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.aggregation = this._aggregation; } - if (this._order !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; - this._order = value.order; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set count(value: number) { - this._count = value; + public set aggregation(value: string) { + this._aggregation = value; } - public resetCount() { - this._count = undefined; + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set order(value: string) { - this._order = value; + public set interval(value: number) { + this._interval = value; } - public resetOrder() { - this._order = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetSunburstDefinitionRequestFormula { + +export class DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable + /** - * An expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly alias?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * @param index the index of the item to return */ - readonly cellDisplayMode?: string; - /** - * A string expression built from queries, formulas, and functions. + public get(index: number): DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetSunburstDefinitionRequestApmQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly formulaExpression: string; + readonly index: string; /** - * conditional_formats block + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly conditionalFormats?: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly searchQuery?: string; /** - * limit block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly limit?: DashboardWidgetSunburstDefinitionRequestFormulaLimit; + readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetSunburstDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference | DashboardWidgetSunburstDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct!.limit), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetSunburstDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.alias = this._alias; + internalValueResult.index = this._index; } - if (this._cellDisplayMode !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; + internalValueResult.searchQuery = this._searchQuery; } - if (this._formulaExpression !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._limit?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetAlias() { - this._alias = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; + public get indexInput() { + return this._index; } - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + public get searchQueryInput() { + return this._searchQuery; } - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetSunburstDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestApmQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetSunburstDefinitionRequestApmQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public putConditionalFormats(value: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get groupByInput() { + return this._groupBy.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetSunburstDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetSunburstDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putLimit(value: DashboardWidgetSunburstDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetLimit() { - this._limit.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; - } -} - -export class DashboardWidgetSunburstDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestFormulaOutputReference { - return new DashboardWidgetSunburstDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery { /** * The aggregation method. * @@ -4589,7 +4139,7 @@ export interface DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery { readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4601,7 +4151,7 @@ export function dashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryToTe } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4612,7 +4162,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputR super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -4630,7 +4180,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputR return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -4690,7 +4240,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputR return this._interval; } } -export interface DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery { +export interface DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery { /** * The aggregation method. * @@ -4711,7 +4261,7 @@ export interface DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuer readonly order: string; } -export function dashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery): any { +export function dashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4723,7 +4273,7 @@ export function dashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -4734,7 +4284,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -4752,7 +4302,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -4809,7 +4359,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOut return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy { +export interface DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy { /** * The facet name. * @@ -4827,10 +4377,10 @@ export interface DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery; } -export function dashboardWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4838,11 +4388,11 @@ export function dashboardWidgetSunburstDefinitionRequestLogQueryGroupByToTerrafo return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -4856,7 +4406,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputRefere super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -4877,7 +4427,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputRefere return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -4931,11 +4481,11 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputRefere } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -4947,8 +4497,8 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputRefere } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -4962,11 +4512,11 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByList extends /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute { +export interface DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute { /** * The aggregation method. * @@ -4987,7 +4537,7 @@ export interface DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute { readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -4999,7 +4549,7 @@ export function dashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeToTe } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5013,7 +4563,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputR super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -5034,7 +4584,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputR return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -5101,8 +4651,8 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputR } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5116,11 +4666,11 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeList ex /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestLogQuery { +export interface DashboardWidgetSunburstDefinitionRequestAuditQuery { /** * The name of the index to query. * @@ -5138,22 +4688,22 @@ export interface DashboardWidgetSunburstDefinitionRequestLogQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery; + readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetSunburstDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference | DashboardWidgetSunburstDefinitionRequestLogQuery): any { +export function dashboardWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference | DashboardWidgetSunburstDefinitionRequestAuditQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5161,13 +4711,13 @@ export function dashboardWidgetSunburstDefinitionRequestLogQueryToTerraform(stru return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5178,7 +4728,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference ext super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestAuditQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -5204,7 +4754,7 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference ext return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestAuditQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -5253,11 +4803,11 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference ext } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestAuditQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -5269,11 +4819,11 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference ext } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestLogQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetSunburstDefinitionRequestAuditQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -5285,11 +4835,11 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference ext } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetSunburstDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -5300,162 +4850,355 @@ export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference ext return this._multiCompute.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats { /** - * The aggregation method. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly aggregation: string; + readonly comparator: string; /** - * The facet name. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly facet?: string; + readonly customBgColor?: string; /** - * Define the time interval in seconds. + * The color palette to apply to the foreground, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} */ - readonly interval?: number; + readonly customFgColor?: string; + /** + * Setting this to True hides values. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + */ + readonly hideValue?: boolean | cdktf.IResolvable; + /** + * Displays an image as the background. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + */ + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric?: string; + /** + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery): any { +export function dashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), + metric: cdktf.stringToTerraform(struct!.metric), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.comparator = this._comparator; } - if (this._facet !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.customBgColor = this._customBgColor; } - if (this._interval !== undefined) { + if (this._customFgColor !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; + this._metric = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; + this._metric = value.metric; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get comparatorInput() { + return this._comparator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); } - public set facet(value: string) { - this._facet = value; + public set customBgColor(value: string) { + this._customBgColor = value; } - public resetFacet() { - this._facet = undefined; + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } + public get customBgColorInput() { + return this._customBgColor; + } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set interval(value: number) { - this._interval = value; + public set customFgColor(value: string) { + this._customFgColor = value; } - public resetInterval() { - this._interval = undefined; + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get customFgColorInput() { + return this._customFgColor; + } + + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); + } + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; + } + public resetHideValue() { + this._hideValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get hideValueInput() { + return this._hideValue; + } + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } + + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); + } + public set timeframe(value: string) { + this._timeframe = value; + } + public resetTimeframe() { + this._timeframe = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; } } -export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery { + +export class DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable + /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly aggregation: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The facet name. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetSunburstDefinitionRequestFormulaLimit { + /** + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly facet?: string; + readonly count?: number; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The direction of the sort. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly order: string; + readonly order?: string; } -export function dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery): any { +export function dashboardWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestFormulaLimitOutputReference | DashboardWidgetSunburstDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), + count: cdktf.numberToTerraform(struct!.count), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5466,16 +5209,12 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.count = this._count; } if (this._order !== undefined) { hasAnyValues = true; @@ -5484,51 +5223,36 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuer return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; + this._count = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; + this._count = value.count; this._order = value.order; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set facet(value: string) { - this._facet = value; + public set count(value: number) { + this._count = value; } - public resetFacet() { - this._facet = undefined; + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get countInput() { + return this._count; } - // order - computed: false, optional: false, required: true + // order - computed: false, optional: true, required: false private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -5536,45 +5260,62 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuer public set order(value: string) { this._order = value; } + public resetOrder() { + this._order = undefined; + } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy { +export interface DashboardWidgetSunburstDefinitionRequestFormula { /** - * The facet name. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly facet?: string; + readonly alias?: string; /** - * The maximum number of items in the group. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly limit?: number; + readonly cellDisplayMode?: string; /** - * sort_query block + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery; + readonly formulaExpression: string; + /** + * conditional_formats block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + */ + readonly conditionalFormats?: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + /** + * limit block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: DashboardWidgetSunburstDefinitionRequestFormulaLimit; } -export function dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetSunburstDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -5588,34 +5329,44 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputRe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.alias = this._alias; } - if (this._limit !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.formulaExpression = this._formulaExpression; + } + if (this._conditionalFormats?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + } + if (this._limit?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -5624,63 +5375,94 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputRe else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - public set facet(value: string) { - this._facet = value; + public set alias(value: string) { + this._alias = value; } - public resetFacet() { - this._facet = undefined; + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get aliasInput() { + return this._alias; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - public set limit(value: number) { - this._limit = value; + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public resetLimit() { - this._limit = undefined; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set formulaExpression(value: string) { + this._formulaExpression = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get formulaExpressionInput() { + return this._formulaExpression; + } + + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; + } + public putConditionalFormats(value: DashboardWidgetSunburstDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; + } + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; + } + + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetSunburstDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; + } + public putLimit(value: DashboardWidgetSunburstDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; + } + public resetLimit() { + this._limit.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit.internalValue; } } -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -5694,11 +5476,11 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestFormulaOutputReference { + return new DashboardWidgetSunburstDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute { +export interface DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery { /** * The aggregation method. * @@ -5719,7 +5501,7 @@ export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComput readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -5731,24 +5513,18 @@ export function dashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute } } -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -5766,21 +5542,15 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -5832,74 +5602,40 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOut return this._interval; } } - -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetSunburstDefinitionRequestNetworkQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; + readonly order: string; } -export function dashboardWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference | DashboardWidgetSunburstDefinitionRequestNetworkQuery): any { +export function dashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -5910,232 +5646,184 @@ export class DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; - } - else { + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); - } - public set index(value: string) { - this._index = value; - } - // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; - } - - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; - } - public resetSearchQuery() { - this._searchQuery = undefined; - } - // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; - } - - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; - } - public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery) { - this._computeQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get facetInput() { + return this._facet; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; - } - public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequestProcessQuery { +export interface DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy { /** - * A list of processes. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly filterBy?: string[]; + readonly facet?: string; /** - * The max number of items in the filter list. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * Your chosen metric. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric: string; - /** - * Your chosen search term. + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly searchBy?: string; + readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery; } -export function dashboardWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference | DashboardWidgetSunburstDefinitionRequestProcessQuery): any { +export function dashboardWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + sort_query: dashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; + internalValueResult.facet = this._facet; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._searchBy !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; + this.resolvableValue = undefined; + this._facet = undefined; this._limit = undefined; - this._metric = undefined; - this._searchBy = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; + this.resolvableValue = undefined; + this._facet = value.facet; this._limit = value.limit; - this._metric = value.metric; - this._searchBy = value.searchBy; + this._sortQuery.internalValue = value.sortQuery; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set filterBy(value: string[]) { - this._filterBy = value; + public set facet(value: string) { + this._facet = value; } - public resetFilterBy() { - this._filterBy = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get facetInput() { + return this._facet; } // limit - computed: false, optional: true, required: false @@ -6154,118 +5842,244 @@ export class DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference return this._limit; } - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set metric(value: string) { - this._metric = value; + public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get sortQueryInput() { + return this._sortQuery.internalValue; } +} - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); - } - public set searchBy(value: string) { - this._searchBy = value; - } - public resetSearchBy() { - this._searchBy = undefined; +export class DashboardWidgetSunburstDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery { +export interface DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute { /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly dataSource: string; + readonly aggregation: string; /** - * APM Environment. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly env: string; + readonly facet?: string; /** - * Determines whether stats for upstream or downstream dependencies should be queried. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly isUpstream?: boolean | cdktf.IResolvable; + readonly interval?: number; +} + +export function dashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly name: string; + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable + /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly operationName: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetSunburstDefinitionRequestLogQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly primaryTagName?: string; + readonly index: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly primaryTagValue?: string; + readonly searchQuery?: string; /** - * APM resource. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly resourceName: string; + readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery; /** - * APM service. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly service: string; + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly stat: string; + readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetSunburstDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference | DashboardWidgetSunburstDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6276,303 +6090,162 @@ export class DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.index = this._index; } - if (this._primaryTagValue !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.searchQuery = this._searchQuery; } - if (this._resourceName !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._service !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._stat !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); - } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetIsUpstream() { - this._isUpstream = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; + public get indexInput() { + return this._index; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); + public set searchQuery(value: string) { + this._searchQuery = value; } - public set operationName(value: string) { - this._operationName = value; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get searchQueryInput() { + return this._searchQuery; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetSunburstDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; - } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetSunburstDefinitionRequestLogQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public set resourceName(value: string) { - this._resourceName = value; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get groupByInput() { + return this._groupBy.internalValue; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetSunburstDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public set stat(value: string) { - this._stat = value; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Array of fields to group results by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: string[]; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName?: string; - /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} - */ - readonly primaryTagName?: string; - /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} - */ - readonly primaryTagValue?: string; +export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery { /** - * APM resource. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly resourceName?: string; + readonly aggregation: string; /** - * APM service. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly service: string; + readonly facet?: string; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly stat: string; + readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -6583,434 +6256,138 @@ export class DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.aggregation = this._aggregation; } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._groupBy !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { - hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; - } - if (this._service !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.facet = this._facet; } - if (this._stat !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); - } - public set env(value: string) { - this._env = value; - } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); - } - public set groupBy(value: string[]) { - this._groupBy = value; - } - public resetGroupBy() { - this._groupBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; - } - public resetOperationName() { - this._operationName = undefined; - } - // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; - } - - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); - } - public set primaryTagName(value: string) { - this._primaryTagName = value; - } - public resetPrimaryTagName() { - this._primaryTagName = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; - } - - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get aggregationInput() { + return this._aggregation; } - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set resourceName(value: string) { - this._resourceName = value; + public set facet(value: string) { + this._facet = value; } - public resetResourceName() { - this._resourceName = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; + public get facetInput() { + return this._facet; } - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); + public set interval(value: number) { + this._interval = value; } - public set stat(value: string) { - this._stat = value; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The aggregation method. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * A time interval in milliseconds. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly interval?: number; + readonly facet?: string; /** - * The measurable attribute to compute. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly metric?: string; + readonly order: string; } -export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), - interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._interval = undefined; - this._metric = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._interval = value.interval; - this._metric = value.metric; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } -} - -export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort { - /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The metric used for sorting group by results. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} - */ - readonly metric?: string; - /** - * Direction of sort. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order?: string; -} - -export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._metric !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.facet = this._facet; } if (this._order !== undefined) { hasAnyValues = true; @@ -7019,17 +6396,17 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortO return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; - this._metric = undefined; + this._facet = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; - this._metric = value.metric; + this._facet = value.facet; this._order = value.order; } } @@ -7047,23 +6424,23 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortO return this._aggregation; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set metric(value: string) { - this._metric = value; + public set facet(value: string) { + this._facet = value; } - public resetMetric() { - this._metric = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false + // order - computed: false, optional: false, required: true private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -7071,36 +6448,33 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortO public set order(value: string) { this._order = value; } - public resetOrder() { - this._order = undefined; - } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy { /** - * The event facet. + * The facet name. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly facet: string; + readonly facet?: string; /** - * The number of groups to return. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sort?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort; + readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery; } -export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -7108,11 +6482,11 @@ export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByTo return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + sort_query: dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -7126,7 +6500,7 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -7140,20 +6514,20 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutpu hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sort?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._facet = undefined; this._limit = undefined; - this._sort.internalValue = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -7164,11 +6538,11 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutpu this.resolvableValue = undefined; this._facet = value.facet; this._limit = value.limit; - this._sort.internalValue = value.sort; + this._sortQuery.internalValue = value.sortQuery; } } - // facet - computed: false, optional: false, required: true + // facet - computed: false, optional: true, required: false private _facet?: string; public get facet() { return this.getStringAttribute('facet'); @@ -7176,6 +6550,9 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutpu public set facet(value: string) { this._facet = value; } + public resetFacet() { + this._facet = undefined; + } // Temporarily expose input value. Use with caution. public get facetInput() { return this._facet; @@ -7197,25 +6574,25 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutpu return this._limit; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putSort(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -7229,129 +6606,212 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch { +export interface DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute { /** - * The events search string. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly query: string; -} + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} -export function dashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch): any { +export function dashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._query !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set query(value: string) { - this._query = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetSunburstDefinitionRequestQueryEventQuery { + +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable + /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly dataSource: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * An array of index names to query in the stream. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetSunburstDefinitionRequestNetworkQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly indexes?: string[]; + readonly index: string; /** - * The name of query for use in formulas. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly name: string; + readonly searchQuery?: string; /** - * compute block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly compute: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; /** - * search block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly search?: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch; + readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference | DashboardWidgetSunburstDefinitionRequestNetworkQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), - name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7362,118 +6822,102 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputRefere super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestNetworkQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._indexes !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.index = this._index; } - if (this._name !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.searchQuery = this._searchQuery; } - if (this._compute?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._search?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestNetworkQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._indexes = undefined; - this._name = undefined; - this._compute.internalValue = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._indexes = value.indexes; - this._name = value.name; - this._compute.internalValue = value.compute; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._multiCompute.internalValue = value.multiCompute; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set dataSource(value: string) { - this._dataSource = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get indexInput() { + return this._index; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set indexes(value: string[]) { - this._indexes = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetIndexes() { - this._indexes = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get searchQueryInput() { + return this._searchQuery; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public putCompute(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -7484,63 +6928,63 @@ export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputRefere return this._groupBy.internalValue; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putSearch(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestQueryMetricQuery { +export interface DashboardWidgetSunburstDefinitionRequestProcessQuery { /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly aggregator?: string; + readonly filterBy?: string[]; /** - * The data source for metrics queries. + * The max number of items in the filter list. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly dataSource?: string; + readonly limit?: number; /** - * The name of the query for use in formulas. + * Your chosen metric. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly name: string; + readonly metric: string; /** - * The metrics query definition. + * Your chosen search term. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} */ - readonly query: string; + readonly searchBy?: string; } -export function dashboardWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference | DashboardWidgetSunburstDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7551,179 +6995,189 @@ export class DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputRefer super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; + internalValueResult.filterBy = this._filterBy; } - if (this._dataSource !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; + internalValueResult.limit = this._limit; } - if (this._name !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.metric = this._metric; } - if (this._query !== undefined) { + if (this._searchBy !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this._filterBy = undefined; + this._limit = undefined; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this._filterBy = value.filterBy; + this._limit = value.limit; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set aggregator(value: string) { - this._aggregator = value; + public set filterBy(value: string[]) { + this._filterBy = value; } - public resetAggregator() { - this._aggregator = undefined; + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get filterByInput() { + return this._filterBy; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set dataSource(value: string) { - this._dataSource = value; + public set limit(value: number) { + this._limit = value; } - public resetDataSource() { - this._dataSource = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get limitInput() { + return this._limit; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set name(value: string) { - this._name = value; + public set metric(value: string) { + this._metric = value; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get metricInput() { + return this._metric; } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); } - public set query(value: string) { - this._query = value; + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get searchByInput() { + return this._searchBy; } } -export interface DashboardWidgetSunburstDefinitionRequestQueryProcessQuery { +export interface DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery { /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly aggregator?: string; + readonly dataSource: string; /** - * The data source for process queries. Valid values are `process`, `container`. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly dataSource: string; + readonly env: string; /** - * Whether to normalize the CPU percentages. + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + readonly isUpstream?: boolean | cdktf.IResolvable; /** - * The number of hits to return. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly limit?: number; + readonly name: string; /** - * The process metric name. + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly metric: string; + readonly operationName: string; /** - * The name of query for use in formulas. + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} */ - readonly name: string; + readonly primaryTagName?: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} */ - readonly sort?: string; + readonly primaryTagValue?: string; /** - * An array of tags to filter by. + * APM resource. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} */ - readonly tagFilters?: string[]; + readonly resourceName: string; /** - * The text to use as a filter. + * APM service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} */ - readonly textFilter?: string; -} + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; +} -export function dashboardWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -7734,91 +7188,81 @@ export class DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputRefe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } if (this._dataSource !== undefined) { hasAnyValues = true; internalValueResult.dataSource = this._dataSource; } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.env = this._env; } - if (this._metric !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.isUpstream = this._isUpstream; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } - if (this._sort !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort; + internalValueResult.operationName = this._operationName; } - if (this._tagFilters !== undefined) { + if (this._primaryTagName !== undefined) { hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; + internalValueResult.primaryTagName = this._primaryTagName; } - if (this._textFilter !== undefined) { + if (this._primaryTagValue !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; - this._metric = undefined; + this._env = undefined; + this._isUpstream = undefined; this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; - this._metric = value.metric; + this._env = value.env; + this._isUpstream = value.isUpstream; this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - // data_source - computed: false, optional: false, required: true private _dataSource?: string; public get dataSource() { @@ -7832,49 +7276,33 @@ export class DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputRefe return this._dataSource; } - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; + public get envInput() { + return this._env; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; } - public set metric(value: string) { - this._metric = value; + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get isUpstreamInput() { + return this._isUpstream; } // name - computed: false, optional: false, required: true @@ -7890,343 +7318,489 @@ export class DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputRefe return this._name; } - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); } - public set sort(value: string) { - this._sort = value; + public set operationName(value: string) { + this._operationName = value; } - public resetSort() { - this._sort = undefined; + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; + } + + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; + public get primaryTagNameInput() { + return this._primaryTagName; } - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public set tagFilters(value: string[]) { - this._tagFilters = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetTagFilters() { - this._tagFilters = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; + public get primaryTagValueInput() { + return this._primaryTagValue; } - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); } - public set textFilter(value: string) { - this._textFilter = value; + public set resourceName(value: string) { + this._resourceName = value; } - public resetTextFilter() { - this._textFilter = undefined; + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; } // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + public get serviceInput() { + return this._service; } -} -export interface DashboardWidgetSunburstDefinitionRequestQuery { - /** - * apm_dependency_stats_query block + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; + } +} +export interface DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery { + /** + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly apmDependencyStatsQuery?: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery; + readonly dataSource: string; /** - * apm_resource_stats_query block + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly apmResourceStatsQuery?: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery; + readonly env: string; /** - * event_query block + * Array of fields to group results by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly eventQuery?: DashboardWidgetSunburstDefinitionRequestQueryEventQuery; + readonly groupBy?: string[]; /** - * metric_query block + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly metricQuery?: DashboardWidgetSunburstDefinitionRequestQueryMetricQuery; + readonly name: string; /** - * process_query block + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly processQuery?: DashboardWidgetSunburstDefinitionRequestQueryProcessQuery; + readonly operationName?: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetSunburstDefinitionRequestQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetSunburstDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; + internalValueResult.dataSource = this._dataSource; } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; + internalValueResult.env = this._env; } - if (this._eventQuery?.internalValue !== undefined) { + if (this._groupBy !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.groupBy = this._groupBy; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.name = this._name; } - if (this._processQuery?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._groupBy = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._dataSource = value.dataSource; + this._env = value.env; + this._groupBy = value.groupBy; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; + public get dataSourceInput() { + return this._dataSource; } - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; - } - public putApmResourceStatsQuery(value: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; + public get envInput() { + return this._env; } - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); } - public putEventQuery(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + public set groupBy(value: string[]) { + this._groupBy = value; } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + public resetGroupBy() { + this._groupBy = undefined; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get groupByInput() { + return this._groupBy; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putMetricQuery(value: DashboardWidgetSunburstDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get operationNameInput() { + return this._operationName; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public putProcessQuery(value: DashboardWidgetSunburstDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get primaryTagNameInput() { + return this._primaryTagName; } -} -export class DashboardWidgetSunburstDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestQueryOutputReference { - return new DashboardWidgetSunburstDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute { /** - * The aggregation method. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * The facet name. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly facet?: string; + readonly interval?: number; /** - * Define the time interval in seconds. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly interval?: number; + readonly metric?: string; } -export function dashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } if (this._interval !== undefined) { hasAnyValues = true; internalValueResult.interval = this._interval; } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; - this._facet = undefined; this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; - this._facet = value.facet; this._interval = value.interval; + this._metric = value.metric; } } @@ -8243,22 +7817,6 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputR return this._aggregation; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - // interval - computed: false, optional: true, required: false private _interval?: number; public get interval() { @@ -8274,41 +7832,77 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputR public get intervalInput() { return this._interval; } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } } -export interface DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery { + +export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort { + /** + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * The facet name. + * The metric used for sorting group by results. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly facet?: string; + readonly metric?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Direction of sort. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly order: string; + readonly order?: string; } -export function dashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery): any { +export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), + metric: cdktf.stringToTerraform(struct!.metric), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8319,16 +7913,16 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOut super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._facet !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.metric = this._metric; } if (this._order !== undefined) { hasAnyValues = true; @@ -8337,17 +7931,17 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOut return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; - this._facet = undefined; + this._metric = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; - this._facet = value.facet; + this._metric = value.metric; this._order = value.order; } } @@ -8365,23 +7959,23 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOut return this._aggregation; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public resetFacet() { - this._facet = undefined; + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get metricInput() { + return this._metric; } - // order - computed: false, optional: false, required: true + // order - computed: false, optional: true, required: false private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -8389,33 +7983,36 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOut public set order(value: string) { this._order = value; } + public resetOrder() { + this._order = undefined; + } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy { +export interface DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy { /** - * The facet name. + * The event facet. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly facet?: string; + readonly facet: string; /** - * The maximum number of items in the group. + * The number of groups to return. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort_query block + * sort block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery; + readonly sort?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort; } -export function dashboardWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -8423,11 +8020,11 @@ export function dashboardWidgetSunburstDefinitionRequestRumQueryGroupByToTerrafo return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort: dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -8441,7 +8038,7 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputRefere super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -8455,20 +8052,20 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputRefere hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._facet = undefined; this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._sort.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -8479,11 +8076,11 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputRefere this.resolvableValue = undefined; this._facet = value.facet; this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._sort.internalValue = value.sort; } } - // facet - computed: false, optional: true, required: false + // facet - computed: false, optional: false, required: true private _facet?: string; public get facet() { return this.getStringAttribute('facet'); @@ -8491,9 +8088,6 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputRefere public set facet(value: string) { this._facet = value; } - public resetFacet() { - this._facet = undefined; - } // Temporarily expose input value. Use with caution. public get facetInput() { return this._facet; @@ -8515,25 +8109,25 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputRefere return this._limit; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putSort(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -8547,212 +8141,136 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByList extends /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; +export interface DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch { /** - * Define the time interval in seconds. + * The events search string. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query: string; } -export function dashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public resetInterval() { - this._interval = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } - -export class DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetSunburstDefinitionRequestQueryEventQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * An array of index names to query in the stream. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetSunburstDefinitionRequestRumQuery { + readonly indexes?: string[]; /** - * The name of the index to query. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly index: string; + readonly name: string; /** - * The search query to use. + * Storage location (private beta). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} */ - readonly searchQuery?: string; + readonly storage?: string; /** - * compute_query block + * compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} */ - readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery; + readonly compute: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; /** - * multi_compute block + * search block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} */ - readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly search?: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetSunburstDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference | DashboardWidgetSunburstDefinitionRequestRumQuery): any { +export function dashboardWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), - } -} - -export class DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + } +} + +export class DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8763,102 +8281,140 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference ext super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.dataSource = this._dataSource; } - if (this._searchQuery !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.indexes = this._indexes; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; } if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._search?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._search.internalValue = value.search; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set index(value: string) { - this._index = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get dataSourceInput() { + return this._dataSource; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set indexes(value: string[]) { + this._indexes = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get indexesInput() { + return this._indexes; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; + } + public putCompute(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestRumQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -8869,56 +8425,63 @@ export class DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference ext return this._groupBy.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; } - public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putSearch(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetSearch() { + this._search.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get searchInput() { + return this._search.internalValue; } } -export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionRequestQueryMetricQuery { /** - * The aggregation method. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly aggregation: string; + readonly aggregator?: string; /** - * The facet name. + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet?: string; + readonly dataSource?: string; /** - * Define the time interval in seconds. + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly interval?: number; + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; } -export function dashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -8929,118 +8492,179 @@ export class DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._interval !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetFacet() { - this._facet = undefined; + public set dataSource(value: string) { + this._dataSource = value; + } + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set interval(value: number) { - this._interval = value; + public set name(value: string) { + this._name = value; } - public resetInterval() { - this._interval = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } -export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery { +export interface DashboardWidgetSunburstDefinitionRequestQueryProcessQuery { /** - * The aggregation method. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly aggregation: string; + readonly aggregator?: string; /** - * The facet name. + * The data source for process queries. Valid values are `process`, `container`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly facet?: string; + readonly dataSource: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Whether to normalize the CPU percentages. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} */ - readonly order: string; + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; + /** + * The number of hits to return. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * The process metric name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + */ + readonly metric: string; + /** + * The name of query for use in formulas. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + */ + readonly name: string; + /** + * The direction of the sort. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + */ + readonly sort?: string; + /** + * An array of tags to filter by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + */ + readonly tagFilters?: string[]; + /** + * The text to use as a filter. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + */ + readonly textFilter?: string; } -export function dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetSunburstDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9051,272 +8675,258 @@ export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQue super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.aggregator = this._aggregator; } - if (this._facet !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.dataSource = this._dataSource; } - if (this._order !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._sort !== undefined) { + hasAnyValues = true; + internalValueResult.sort = this._sort; + } + if (this._tagFilters !== undefined) { + hasAnyValues = true; + internalValueResult.tagFilters = this._tagFilters; + } + if (this._textFilter !== undefined) { + hasAnyValues = true; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQueryProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set aggregation(value: string) { - this._aggregation = value; + public set aggregator(value: string) { + this._aggregator = value; + } + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get aggregatorInput() { + return this._aggregator; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetFacet() { - this._facet = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get dataSourceInput() { + return this._dataSource; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); } - public set order(value: string) { - this._order = value; + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; + } + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } -} -export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery; -} -export function dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } -} - -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); } - public set facet(value: string) { - this._facet = value; + public set sort(value: string) { + this._sort = value; } - public resetFacet() { - this._facet = undefined; + public resetSort() { + this._sort = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get sortInput() { + return this._sort; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); } - public set limit(value: number) { - this._limit = value; + public set tagFilters(value: string[]) { + this._tagFilters = value; } - public resetLimit() { - this._limit = undefined; + public resetTagFilters() { + this._tagFilters = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get tagFiltersInput() { + return this._tagFilters; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); } - public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set textFilter(value: string) { + this._textFilter = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetTextFilter() { + this._textFilter = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get textFilterInput() { + return this._textFilter; } } - -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetSunburstDefinitionRequestQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * apm_dependency_stats_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly apmDependencyStatsQuery?: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery; /** - * @param index the index of the item to return + * apm_resource_stats_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute { + readonly apmResourceStatsQuery?: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery; /** - * The aggregation method. + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly aggregation: string; + readonly eventQuery?: DashboardWidgetSunburstDefinitionRequestQueryEventQuery; /** - * The facet name. + * metric_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} */ - readonly facet?: string; + readonly metricQuery?: DashboardWidgetSunburstDefinitionRequestQueryMetricQuery; /** - * Define the time interval in seconds. + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly interval?: number; + readonly processQuery?: DashboardWidgetSunburstDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + apm_dependency_stats_query: dashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetSunburstDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetSunburstDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetSunburstDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -9330,34 +8940,44 @@ export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._facet !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._interval !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.eventQuery = this._eventQuery?.internalValue; + } + if (this._metricQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.metricQuery = this._metricQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -9366,60 +8986,97 @@ export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOu else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set aggregation(value: string) { - this._aggregation = value; + public putApmDependencyStatsQuery(value: DashboardWidgetSunburstDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; + } + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public set facet(value: string) { - this._facet = value; + public putApmResourceStatsQuery(value: DashboardWidgetSunburstDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetSunburstDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public set interval(value: number) { - this._interval = value; + public putEventQuery(value: DashboardWidgetSunburstDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetInterval() { - this._interval = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get eventQueryInput() { + return this._eventQuery.internalValue; + } + + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetSunburstDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; + } + public putMetricQuery(value: DashboardWidgetSunburstDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; + } + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricQueryInput() { + return this._metricQuery.internalValue; + } + + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetSunburstDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetSunburstDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } } -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -9433,58 +9090,44 @@ export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeLi /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestQueryOutputReference { + return new DashboardWidgetSunburstDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinitionRequestSecurityQuery { - /** - * The name of the index to query. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} - */ - readonly index: string; - /** - * The search query to use. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} - */ - readonly searchQuery?: string; +export interface DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery { /** - * compute_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery; + readonly aggregation: string; /** - * group_by block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly groupBy?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly facet?: string; /** - * multi_compute block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReference | DashboardWidgetSunburstDefinitionRequestSecurityQuery): any { +export function dashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -9495,211 +9138,237 @@ export class DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReferenc super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { - hasAnyValues = true; - internalValueResult.index = this._index; - } - if (this._searchQuery !== undefined) { - hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; - } - if (this._computeQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._groupBy?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.facet = this._facet; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set index(value: string) { - this._index = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get aggregationInput() { + return this._aggregation; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set facet(value: string) { + this._facet = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get facetInput() { + return this._facet; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get intervalInput() { + return this._interval; } +} +export interface DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; - } - public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; +export function dashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get aggregationInput() { + return this._aggregation; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get facetInput() { + return this._facet; + } + + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; } } -export interface DashboardWidgetSunburstDefinitionRequest { - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetSunburstDefinitionRequestApmQuery; - /** - * audit_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} - */ - readonly auditQuery?: DashboardWidgetSunburstDefinitionRequestAuditQuery; - /** - * formula block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} - */ - readonly formula?: DashboardWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable; - /** - * log_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} - */ - readonly logQuery?: DashboardWidgetSunburstDefinitionRequestLogQuery; - /** - * network_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} - */ - readonly networkQuery?: DashboardWidgetSunburstDefinitionRequestNetworkQuery; - /** - * process_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} - */ - readonly processQuery?: DashboardWidgetSunburstDefinitionRequestProcessQuery; +export interface DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy { /** - * query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly query?: DashboardWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable; + readonly facet?: string; /** - * rum_query block + * The maximum number of items in the group. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly rumQuery?: DashboardWidgetSunburstDefinitionRequestRumQuery; + readonly limit?: number; /** - * security_query block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly securityQuery?: DashboardWidgetSunburstDefinitionRequestSecurityQuery; + readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery; } -export function dashboardWidgetSunburstDefinitionRequestToTerraform(struct?: DashboardWidgetSunburstDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetSunburstDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - audit_query: dashboardWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), - formula: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetSunburstDefinitionRequestLogQueryToTerraform(struct!.logQuery), - network_query: dashboardWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), - process_query: dashboardWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetSunburstDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetSunburstDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -9713,69 +9382,34 @@ export class DashboardWidgetSunburstDefinitionRequestOutputReference extends cdk super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._auditQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.auditQuery = this._auditQuery?.internalValue; - } - if (this._formula?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; - } - if (this._logQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; - } - if (this._networkQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.networkQuery = this._networkQuery?.internalValue; - } - if (this._processQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; - } - if (this._query?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.facet = this._facet; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._auditQuery.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._networkQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -9784,182 +9418,63 @@ export class DashboardWidgetSunburstDefinitionRequestOutputReference extends cdk else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._auditQuery.internalValue = value.auditQuery; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._networkQuery.internalValue = value.networkQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - public resetQ() { - this._q = undefined; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; - } - public putApmQuery(value: DashboardWidgetSunburstDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; - } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; - } - - // audit_query - computed: false, optional: true, required: false - private _auditQuery = new DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference(this, "audit_query"); - public get auditQuery() { - return this._auditQuery; - } - public putAuditQuery(value: DashboardWidgetSunburstDefinitionRequestAuditQuery) { - this._auditQuery.internalValue = value; - } - public resetAuditQuery() { - this._auditQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get auditQueryInput() { - return this._auditQuery.internalValue; - } - - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetSunburstDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; - } - public resetFormula() { - this._formula.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; - } - - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; - } - public putLogQuery(value: DashboardWidgetSunburstDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; - } - public resetLogQuery() { - this._logQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; - } - - // network_query - computed: false, optional: true, required: false - private _networkQuery = new DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference(this, "network_query"); - public get networkQuery() { - return this._networkQuery; - } - public putNetworkQuery(value: DashboardWidgetSunburstDefinitionRequestNetworkQuery) { - this._networkQuery.internalValue = value; - } - public resetNetworkQuery() { - this._networkQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get networkQueryInput() { - return this._networkQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetSunburstDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; - } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; - } - - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetSunburstDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putQuery(value: DashboardWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetQuery() { - this._query.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; + public get facetInput() { + return this._facet; } - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putRumQuery(value: DashboardWidgetSunburstDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; + public get limitInput() { + return this._limit; } - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putSecurityQuery(value: DashboardWidgetSunburstDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; + public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetSunburstDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetSunburstDefinitionRequest[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -9973,775 +9488,467 @@ export class DashboardWidgetSunburstDefinitionRequestList extends cdktf.ComplexL /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetSunburstDefinitionRequestOutputReference { - return new DashboardWidgetSunburstDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetSunburstDefinition { - /** - * Whether or not to show the total value in the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_total Dashboard#hide_total} - */ - readonly hideTotal?: boolean | cdktf.IResolvable; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; - /** - * The size of the widget's title. Default is 16. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} - */ - readonly titleSize?: string; - /** - * custom_link block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} - */ - readonly customLink?: DashboardWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable; +export interface DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute { /** - * legend_inline block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_inline Dashboard#legend_inline} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly legendInline?: DashboardWidgetSunburstDefinitionLegendInline; + readonly aggregation: string; /** - * legend_table block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_table Dashboard#legend_table} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly legendTable?: DashboardWidgetSunburstDefinitionLegendTable; + readonly facet?: string; /** - * request block + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly request?: DashboardWidgetSunburstDefinitionRequest[] | cdktf.IResolvable; + readonly interval?: number; } -export function dashboardWidgetSunburstDefinitionToTerraform(struct?: DashboardWidgetSunburstDefinitionOutputReference | DashboardWidgetSunburstDefinition): any { +export function dashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - hide_total: cdktf.booleanToTerraform(struct!.hideTotal), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetSunburstDefinitionCustomLinkToTerraform, true)(struct!.customLink), - legend_inline: dashboardWidgetSunburstDefinitionLegendInlineToTerraform(struct!.legendInline), - legend_table: dashboardWidgetSunburstDefinitionLegendTableToTerraform(struct!.legendTable), - request: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestToTerraform, true)(struct!.request), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetSunburstDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetSunburstDefinition | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._hideTotal !== undefined) { - hasAnyValues = true; - internalValueResult.hideTotal = this._hideTotal; - } - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; - } - if (this._legendInline?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.legendInline = this._legendInline?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._legendTable?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.legendTable = this._legendTable?.internalValue; + internalValueResult.facet = this._facet; } - if (this._request?.internalValue !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetSunburstDefinition | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._hideTotal = undefined; - this._liveSpan = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._legendInline.internalValue = undefined; - this._legendTable.internalValue = undefined; - this._request.internalValue = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._hideTotal = value.hideTotal; - this._liveSpan = value.liveSpan; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._legendInline.internalValue = value.legendInline; - this._legendTable.internalValue = value.legendTable; - this._request.internalValue = value.request; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // hide_total - computed: false, optional: true, required: false - private _hideTotal?: boolean | cdktf.IResolvable; - public get hideTotal() { - return this.getBooleanAttribute('hide_total'); - } - public set hideTotal(value: boolean | cdktf.IResolvable) { - this._hideTotal = value; - } - public resetHideTotal() { - this._hideTotal = undefined; - } - // Temporarily expose input value. Use with caution. - public get hideTotalInput() { - return this._hideTotal; - } - - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; - } - public resetLiveSpan() { - this._liveSpan = undefined; - } - // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; - } - - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; - } - - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); - } - public set titleAlign(value: string) { - this._titleAlign = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetTitleAlign() { - this._titleAlign = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; + public get aggregationInput() { + return this._aggregation; } - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set titleSize(value: string) { - this._titleSize = value; + public set facet(value: string) { + this._facet = value; } - public resetTitleSize() { - this._titleSize = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; + public get facetInput() { + return this._facet; } - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetSunburstDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public putCustomLink(value: DashboardWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; + public set interval(value: number) { + this._interval = value; } - public resetCustomLink() { - this._customLink.internalValue = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; + public get intervalInput() { + return this._interval; } +} - // legend_inline - computed: false, optional: true, required: false - private _legendInline = new DashboardWidgetSunburstDefinitionLegendInlineOutputReference(this, "legend_inline"); - public get legendInline() { - return this._legendInline; - } - public putLegendInline(value: DashboardWidgetSunburstDefinitionLegendInline) { - this._legendInline.internalValue = value; - } - public resetLegendInline() { - this._legendInline.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get legendInlineInput() { - return this._legendInline.internalValue; - } +export class DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable - // legend_table - computed: false, optional: true, required: false - private _legendTable = new DashboardWidgetSunburstDefinitionLegendTableOutputReference(this, "legend_table"); - public get legendTable() { - return this._legendTable; - } - public putLegendTable(value: DashboardWidgetSunburstDefinitionLegendTable) { - this._legendTable.internalValue = value; - } - public resetLegendTable() { - this._legendTable.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get legendTableInput() { - return this._legendTable.internalValue; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetSunburstDefinitionRequestList(this, "request", false); - public get request() { - return this._request; - } - public putRequest(value: DashboardWidgetSunburstDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; - } - public resetRequest() { - this._request.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionCustomLink { +export interface DashboardWidgetSunburstDefinitionRequestRumQuery { /** - * The flag for toggling context menu link visibility. + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly isHidden?: boolean | cdktf.IResolvable; + readonly index: string; /** - * The label for the custom link URL. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly label?: string; + readonly searchQuery?: string; /** - * The URL of the custom link. + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly link?: string; + readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery; /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * group_by block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly overrideLabel?: string; + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionCustomLinkToTerraform(struct?: DashboardWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference | DashboardWidgetSunburstDefinitionRequestRumQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetTimeseriesDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestRumQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; + internalValueResult.index = this._index; } - if (this._label !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.searchQuery = this._searchQuery; } - if (this._link !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } - if (this._overrideLabel !== undefined) { + if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestRumQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); - } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public resetIsHidden() { - this._isHidden = undefined; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; + public get indexInput() { + return this._index; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set label(value: string) { - this._label = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetLabel() { - this._label = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get searchQueryInput() { + return this._searchQuery; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetSunburstDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set link(value: string) { - this._link = value; + public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestRumQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public resetLink() { - this._link = undefined; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get computeQueryInput() { + return this._computeQuery.internalValue; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetSunburstDefinitionRequestRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetGroupBy() { + this._groupBy.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get groupByInput() { + return this._groupBy.internalValue; } -} -export class DashboardWidgetTimeseriesDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetSunburstDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionCustomLinkOutputReference { - return new DashboardWidgetTimeseriesDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionEvent { +export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery { /** - * The event query to use in the widget. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly q: string; + readonly aggregation: string; /** - * The execution method for multi-value filters. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tags_execution Dashboard#tags_execution} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly tagsExecution?: string; + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionEventToTerraform(struct?: DashboardWidgetTimeseriesDefinitionEvent | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - q: cdktf.stringToTerraform(struct!.q), - tags_execution: cdktf.stringToTerraform(struct!.tagsExecution), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetTimeseriesDefinitionEventOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._q !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.q = this._q; + internalValueResult.aggregation = this._aggregation; } - if (this._tagsExecution !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.tagsExecution = this._tagsExecution; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._q = undefined; - this._tagsExecution = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._q = value.q; - this._tagsExecution = value.tagsExecution; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // q - computed: false, optional: false, required: true - private _q?: string; - public get q() { - return this.getStringAttribute('q'); - } - public set q(value: string) { - this._q = value; - } - // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; - } - - // tags_execution - computed: false, optional: true, required: false - private _tagsExecution?: string; - public get tagsExecution() { - return this.getStringAttribute('tags_execution'); - } - public set tagsExecution(value: string) { - this._tagsExecution = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetTagsExecution() { - this._tagsExecution = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get tagsExecutionInput() { - return this._tagsExecution; - } -} - -export class DashboardWidgetTimeseriesDefinitionEventList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionEventOutputReference { - return new DashboardWidgetTimeseriesDefinitionEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetTimeseriesDefinitionMarker { - /** - * How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} - */ - readonly displayType?: string; - /** - * A label for the line or range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; - /** - * A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} - */ - readonly value: string; -} - -export function dashboardWidgetTimeseriesDefinitionMarkerToTerraform(struct?: DashboardWidgetTimeseriesDefinitionMarker | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - display_type: cdktf.stringToTerraform(struct!.displayType), - label: cdktf.stringToTerraform(struct!.label), - value: cdktf.stringToTerraform(struct!.value), - } -} - -export class DashboardWidgetTimeseriesDefinitionMarkerOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._displayType !== undefined) { - hasAnyValues = true; - internalValueResult.displayType = this._displayType; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._value !== undefined) { - hasAnyValues = true; - internalValueResult.value = this._value; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._displayType = undefined; - this._label = undefined; - this._value = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._displayType = value.displayType; - this._label = value.label; - this._value = value.value; - } + public get aggregationInput() { + return this._aggregation; } - // display_type - computed: false, optional: true, required: false - private _displayType?: string; - public get displayType() { - return this.getStringAttribute('display_type'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set displayType(value: string) { - this._displayType = value; + public set facet(value: string) { + this._facet = value; } - public resetDisplayType() { - this._displayType = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get displayTypeInput() { - return this._displayType; + public get facetInput() { + return this._facet; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); - } - public set label(value: string) { - this._label = value; - } - public resetLabel() { - this._label = undefined; - } - // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - - // value - computed: false, optional: false, required: true - private _value?: string; - public get value() { - return this.getStringAttribute('value'); + public set interval(value: number) { + this._interval = value; } - public set value(value: string) { - this._value = value; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; - } -} - -export class DashboardWidgetTimeseriesDefinitionMarkerList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionMarkerOutputReference { - return new DashboardWidgetTimeseriesDefinitionMarkerOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery { /** * The aggregation method. * @@ -10755,14 +9962,14 @@ export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery */ readonly facet?: string; /** - * Define the time interval in seconds. + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly interval?: number; + readonly order: string; } -export function dashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -10770,11 +9977,11 @@ export function dashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryTo return { aggregation: cdktf.stringToTerraform(struct!.aggregation), facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -10785,7 +9992,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutpu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -10796,25 +10003,25 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutpu hasAnyValues = true; internalValueResult.facet = this._facet; } - if (this._interval !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; this._facet = undefined; - this._interval = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; this._facet = value.facet; - this._interval = value.interval; + this._order = value.order; } } @@ -10847,132 +10054,10 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutpu return this._facet; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * Widget sorting methods. Valid values are `asc`, `desc`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} - */ - readonly order: string; -} - -export function dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } public set order(value: string) { this._order = value; @@ -10982,7 +10067,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryO return this._order; } } -export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy { +export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy { /** * The facet name. * @@ -11000,10 +10085,10 @@ export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery; } -export function dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11011,11 +10096,11 @@ export function dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerra return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -11029,7 +10114,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputRefe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -11050,7 +10135,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputRefe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -11104,11 +10189,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputRefe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -11120,8 +10205,8 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputRefe } } -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -11135,11 +10220,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByList exten /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute { +export interface DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute { /** * The aggregation method. * @@ -11160,7 +10245,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11172,7 +10257,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeTo } } -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -11186,7 +10271,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -11207,7 +10292,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -11274,8 +10359,8 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutpu } } -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -11289,11 +10374,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestApmQuery { +export interface DashboardWidgetSunburstDefinitionRequestSecurityQuery { /** * The name of the index to query. * @@ -11311,22 +10396,22 @@ export interface DashboardWidgetTimeseriesDefinitionRequestApmQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery; + readonly computeQuery?: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestApmQuery): any { +export function dashboardWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReference | DashboardWidgetSunburstDefinitionRequestSecurityQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -11334,13 +10419,13 @@ export function dashboardWidgetTimeseriesDefinitionRequestApmQueryToTerraform(st return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -11351,7 +10436,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequestSecurityQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -11377,7 +10462,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference e return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequestSecurityQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -11426,11 +10511,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference e } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -11442,11 +10527,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference e } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -11458,11 +10543,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference e } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetSunburstDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -11473,387 +10558,349 @@ export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference e return this._multiCompute.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery { +export interface DashboardWidgetSunburstDefinitionRequest { /** - * The aggregation method. + * The metric query to use for this widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly aggregation: string; + readonly q?: string; /** - * The facet name. + * apm_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} */ - readonly facet?: string; + readonly apmQuery?: DashboardWidgetSunburstDefinitionRequestApmQuery; /** - * Define the time interval in seconds. + * audit_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} */ - readonly interval?: number; -} - -export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - + readonly auditQuery?: DashboardWidgetSunburstDefinitionRequestAuditQuery; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing + * formula block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); - } - - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery { + readonly formula?: DashboardWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable; /** - * The aggregation method. + * log_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} */ - readonly aggregation: string; + readonly logQuery?: DashboardWidgetSunburstDefinitionRequestLogQuery; /** - * The facet name. + * network_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} */ - readonly facet?: string; + readonly networkQuery?: DashboardWidgetSunburstDefinitionRequestNetworkQuery; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly order: string; + readonly processQuery?: DashboardWidgetSunburstDefinitionRequestProcessQuery; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query?: DashboardWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetSunburstDefinitionRequestRumQuery; + /** + * security_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + */ + readonly securityQuery?: DashboardWidgetSunburstDefinitionRequestSecurityQuery; } -export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery): any { +export function dashboardWidgetSunburstDefinitionRequestToTerraform(struct?: DashboardWidgetSunburstDefinitionRequest | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetSunburstDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + audit_query: dashboardWidgetSunburstDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), + formula: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetSunburstDefinitionRequestLogQueryToTerraform(struct!.logQuery), + network_query: dashboardWidgetSunburstDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), + process_query: dashboardWidgetSunburstDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetSunburstDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetSunburstDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), } } -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionRequestOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.q = this._q; } - if (this._facet !== undefined) { + if (this._apmQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.apmQuery = this._apmQuery?.internalValue; } - if (this._order !== undefined) { + if (this._auditQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.auditQuery = this._auditQuery?.internalValue; + } + if (this._formula?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.formula = this._formula?.internalValue; + } + if (this._logQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._networkQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.networkQuery = this._networkQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinitionRequest | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._auditQuery.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._networkQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this.resolvableValue = undefined; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._auditQuery.internalValue = value.auditQuery; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._networkQuery.internalValue = value.networkQuery; + this._processQuery.internalValue = value.processQuery; + this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public set aggregation(value: string) { - this._aggregation = value; + public set q(value: string) { + this._q = value; + } + public resetQ() { + this._q = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get qInput() { + return this._q; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetSunburstDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; } - public set facet(value: string) { - this._facet = value; + public putApmQuery(value: DashboardWidgetSunburstDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetApmQuery() { + this._apmQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get apmQueryInput() { + return this._apmQuery.internalValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // audit_query - computed: false, optional: true, required: false + private _auditQuery = new DashboardWidgetSunburstDefinitionRequestAuditQueryOutputReference(this, "audit_query"); + public get auditQuery() { + return this._auditQuery; } - public set order(value: string) { - this._order = value; + public putAuditQuery(value: DashboardWidgetSunburstDefinitionRequestAuditQuery) { + this._auditQuery.internalValue = value; + } + public resetAuditQuery() { + this._auditQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get auditQueryInput() { + return this._auditQuery.internalValue; } -} -export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy { - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; - /** - * The maximum number of items in the group. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; - /** - * sort_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} - */ - readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery; -} -export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetSunburstDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; } - return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), + public putFormula(value: DashboardWidgetSunburstDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; + } + public resetFormula() { + this._formula.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get formulaInput() { + return this._formula.internalValue; } -} - -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetSunburstDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; + } + public putLogQuery(value: DashboardWidgetSunburstDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get logQueryInput() { + return this._logQuery.internalValue; } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._sortQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; - } - return hasAnyValues ? internalValueResult : undefined; + // network_query - computed: false, optional: true, required: false + private _networkQuery = new DashboardWidgetSunburstDefinitionRequestNetworkQueryOutputReference(this, "network_query"); + public get networkQuery() { + return this._networkQuery; + } + public putNetworkQuery(value: DashboardWidgetSunburstDefinitionRequestNetworkQuery) { + this._networkQuery.internalValue = value; + } + public resetNetworkQuery() { + this._networkQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get networkQueryInput() { + return this._networkQuery.internalValue; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; - } + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetSunburstDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetSunburstDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetSunburstDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; } - public set facet(value: string) { - this._facet = value; + public putQuery(value: DashboardWidgetSunburstDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetQuery() { + this._query.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get queryInput() { + return this._query.internalValue; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetSunburstDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - public set limit(value: number) { - this._limit = value; + public putRumQuery(value: DashboardWidgetSunburstDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; } - public resetLimit() { - this._limit = undefined; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetSunburstDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putSecurityQuery(value: DashboardWidgetSunburstDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get securityQueryInput() { + return this._securityQuery.internalValue; } } -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetSunburstDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetSunburstDefinitionRequest[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -11867,212 +10914,86 @@ export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByList ext /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetSunburstDefinitionRequestOutputReference { + return new DashboardWidgetSunburstDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute { +export interface DashboardWidgetSunburstDefinition { /** - * The aggregation method. + * Whether or not to show the total value in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_total Dashboard#hide_total} */ - readonly aggregation: string; + readonly hideTotal?: boolean | cdktf.IResolvable; /** - * The facet name. + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} */ - readonly facet?: string; + readonly liveSpan?: string; /** - * Define the time interval in seconds. + * The title of the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} */ - readonly interval?: number; -} - -export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - + readonly title?: string; /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { - hasAnyValues = true; - internalValueResult.interval = this._interval; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; - } - } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; - } - public resetInterval() { - this._interval = undefined; - } - // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return + * The alignment of the widget's title. One of `left`, `center`, or `right`. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestAuditQuery { + readonly titleAlign?: string; /** - * The name of the index to query. + * The size of the widget's title. Default is 16. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} */ - readonly index: string; + readonly titleSize?: string; /** - * The search query to use. + * custom_link block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} */ - readonly searchQuery?: string; + readonly customLink?: DashboardWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable; /** - * compute_query block + * legend_inline block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_inline Dashboard#legend_inline} */ - readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery; + readonly legendInline?: DashboardWidgetSunburstDefinitionLegendInline; /** - * group_by block + * legend_table block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_table Dashboard#legend_table} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; + readonly legendTable?: DashboardWidgetSunburstDefinitionLegendTable; /** - * multi_compute block + * request block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} */ - readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; + readonly request?: DashboardWidgetSunburstDefinitionRequest[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestAuditQuery): any { +export function dashboardWidgetSunburstDefinitionToTerraform(struct?: DashboardWidgetSunburstDefinitionOutputReference | DashboardWidgetSunburstDefinition): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), + hide_total: cdktf.booleanToTerraform(struct!.hideTotal), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetSunburstDefinitionCustomLinkToTerraform, true)(struct!.customLink), + legend_inline: dashboardWidgetSunburstDefinitionLegendInlineToTerraform(struct!.legendInline), + legend_table: dashboardWidgetSunburstDefinitionLegendTableToTerraform(struct!.legendTable), + request: cdktf.listMapper(dashboardWidgetSunburstDefinitionRequestToTerraform, true)(struct!.request), } } -export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetSunburstDefinitionOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -12083,204 +11004,260 @@ export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQuery | undefined { + public get internalValue(): DashboardWidgetSunburstDefinition | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._hideTotal !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.hideTotal = this._hideTotal; } - if (this._searchQuery !== undefined) { + if (this._liveSpan !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.liveSpan = this._liveSpan; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._title !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.title = this._title; } - if (this._groupBy?.internalValue !== undefined) { + if (this._titleAlign !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.titleAlign = this._titleAlign; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._titleSize !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._legendInline?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.legendInline = this._legendInline?.internalValue; + } + if (this._legendTable?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.legendTable = this._legendTable?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQuery | undefined) { + public set internalValue(value: DashboardWidgetSunburstDefinition | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._hideTotal = undefined; + this._liveSpan = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._legendInline.internalValue = undefined; + this._legendTable.internalValue = undefined; + this._request.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._hideTotal = value.hideTotal; + this._liveSpan = value.liveSpan; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._legendInline.internalValue = value.legendInline; + this._legendTable.internalValue = value.legendTable; + this._request.internalValue = value.request; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // hide_total - computed: false, optional: true, required: false + private _hideTotal?: boolean | cdktf.IResolvable; + public get hideTotal() { + return this.getBooleanAttribute('hide_total'); } - public set index(value: string) { - this._index = value; + public set hideTotal(value: boolean | cdktf.IResolvable) { + this._hideTotal = value; + } + public resetHideTotal() { + this._hideTotal = undefined; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get hideTotalInput() { + return this._hideTotal; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); - } - public set searchQuery(value: string) { - this._searchQuery = value; + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); } - public resetSearchQuery() { - this._searchQuery = undefined; + public set liveSpan(value: string) { + this._liveSpan = value; + } + public resetLiveSpan() { + this._liveSpan = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get liveSpanInput() { + return this._liveSpan; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); } - public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set title(value: string) { + this._title = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + public resetTitle() { + this._title = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get titleInput() { + return this._title; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set titleAlign(value: string) { + this._titleAlign = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetTitleAlign() { + this._titleAlign = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get titleAlignInput() { + return this._titleAlign; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); } - public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set titleSize(value: string) { + this._titleSize = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetTitleSize() { + this._titleSize = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get titleSizeInput() { + return this._titleSize; + } + + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetSunburstDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetSunburstDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; + } + + // legend_inline - computed: false, optional: true, required: false + private _legendInline = new DashboardWidgetSunburstDefinitionLegendInlineOutputReference(this, "legend_inline"); + public get legendInline() { + return this._legendInline; + } + public putLegendInline(value: DashboardWidgetSunburstDefinitionLegendInline) { + this._legendInline.internalValue = value; + } + public resetLegendInline() { + this._legendInline.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendInlineInput() { + return this._legendInline.internalValue; + } + + // legend_table - computed: false, optional: true, required: false + private _legendTable = new DashboardWidgetSunburstDefinitionLegendTableOutputReference(this, "legend_table"); + public get legendTable() { + return this._legendTable; + } + public putLegendTable(value: DashboardWidgetSunburstDefinitionLegendTable) { + this._legendTable.internalValue = value; + } + public resetLegendTable() { + this._legendTable.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendTableInput() { + return this._legendTable.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetSunburstDefinitionRequestList(this, "request", false); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetSunburstDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats { - /** - * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} - */ - readonly comparator: string; - /** - * The color palette to apply to the background, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} - */ - readonly customBgColor?: string; - /** - * The color palette to apply to the foreground, same values available as palette. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} - */ - readonly customFgColor?: string; - /** - * Setting this to True hides values. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} - */ - readonly hideValue?: boolean | cdktf.IResolvable; - /** - * Displays an image as the background. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} - */ - readonly imageUrl?: string; +export interface DashboardWidgetTimeseriesDefinitionCustomLink { /** - * The metric from the request to correlate with this conditional format. + * The flag for toggling context menu link visibility. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} */ - readonly metric?: string; + readonly isHidden?: boolean | cdktf.IResolvable; /** - * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. + * The label for the custom link URL. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly palette: string; + readonly label?: string; /** - * Defines the displayed timeframe. + * The URL of the custom link. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} */ - readonly timeframe?: string; + readonly link?: string; /** - * A value for the comparator. + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} */ - readonly value: number; + readonly overrideLabel?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionCustomLinkToTerraform(struct?: DashboardWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - comparator: cdktf.stringToTerraform(struct!.comparator), - custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), - custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), - hide_value: cdktf.booleanToTerraform(struct!.hideValue), - image_url: cdktf.stringToTerraform(struct!.imageUrl), - metric: cdktf.stringToTerraform(struct!.metric), - palette: cdktf.stringToTerraform(struct!.palette), - timeframe: cdktf.stringToTerraform(struct!.timeframe), - value: cdktf.numberToTerraform(struct!.value), + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), } } -export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -12294,64 +11271,39 @@ export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._comparator !== undefined) { - hasAnyValues = true; - internalValueResult.comparator = this._comparator; - } - if (this._customBgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customBgColor = this._customBgColor; - } - if (this._customFgColor !== undefined) { - hasAnyValues = true; - internalValueResult.customFgColor = this._customFgColor; - } - if (this._hideValue !== undefined) { - hasAnyValues = true; - internalValueResult.hideValue = this._hideValue; - } - if (this._imageUrl !== undefined) { - hasAnyValues = true; - internalValueResult.imageUrl = this._imageUrl; - } - if (this._metric !== undefined) { + if (this._isHidden !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.isHidden = this._isHidden; } - if (this._palette !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.label = this._label; } - if (this._timeframe !== undefined) { + if (this._link !== undefined) { hasAnyValues = true; - internalValueResult.timeframe = this._timeframe; + internalValueResult.link = this._link; } - if (this._value !== undefined) { + if (this._overrideLabel !== undefined) { hasAnyValues = true; - internalValueResult.value = this._value; + internalValueResult.overrideLabel = this._overrideLabel; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionCustomLink | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._comparator = undefined; - this._customBgColor = undefined; - this._customFgColor = undefined; - this._hideValue = undefined; - this._imageUrl = undefined; - this._metric = undefined; - this._palette = undefined; - this._timeframe = undefined; - this._value = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -12360,156 +11312,80 @@ export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._comparator = value.comparator; - this._customBgColor = value.customBgColor; - this._customFgColor = value.customFgColor; - this._hideValue = value.hideValue; - this._imageUrl = value.imageUrl; - this._metric = value.metric; - this._palette = value.palette; - this._timeframe = value.timeframe; - this._value = value.value; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; } } - // comparator - computed: false, optional: false, required: true - private _comparator?: string; - public get comparator() { - return this.getStringAttribute('comparator'); - } - public set comparator(value: string) { - this._comparator = value; - } - // Temporarily expose input value. Use with caution. - public get comparatorInput() { - return this._comparator; - } - - // custom_bg_color - computed: false, optional: true, required: false - private _customBgColor?: string; - public get customBgColor() { - return this.getStringAttribute('custom_bg_color'); - } - public set customBgColor(value: string) { - this._customBgColor = value; - } - public resetCustomBgColor() { - this._customBgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customBgColorInput() { - return this._customBgColor; - } - - // custom_fg_color - computed: false, optional: true, required: false - private _customFgColor?: string; - public get customFgColor() { - return this.getStringAttribute('custom_fg_color'); - } - public set customFgColor(value: string) { - this._customFgColor = value; - } - public resetCustomFgColor() { - this._customFgColor = undefined; - } - // Temporarily expose input value. Use with caution. - public get customFgColorInput() { - return this._customFgColor; - } - - // hide_value - computed: false, optional: true, required: false - private _hideValue?: boolean | cdktf.IResolvable; - public get hideValue() { - return this.getBooleanAttribute('hide_value'); + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); } - public set hideValue(value: boolean | cdktf.IResolvable) { - this._hideValue = value; + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; } - public resetHideValue() { - this._hideValue = undefined; + public resetIsHidden() { + this._isHidden = undefined; } // Temporarily expose input value. Use with caution. - public get hideValueInput() { - return this._hideValue; + public get isHiddenInput() { + return this._isHidden; } - // image_url - computed: false, optional: true, required: false - private _imageUrl?: string; - public get imageUrl() { - return this.getStringAttribute('image_url'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set imageUrl(value: string) { - this._imageUrl = value; + public set label(value: string) { + this._label = value; } - public resetImageUrl() { - this._imageUrl = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get imageUrlInput() { - return this._imageUrl; + public get labelInput() { + return this._label; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); } - - // palette - computed: false, optional: false, required: true - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + public set link(value: string) { + this._link = value; } - public set palette(value: string) { - this._palette = value; + public resetLink() { + this._link = undefined; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get linkInput() { + return this._link; } - // timeframe - computed: false, optional: true, required: false - private _timeframe?: string; - public get timeframe() { - return this.getStringAttribute('timeframe'); - } - public set timeframe(value: string) { - this._timeframe = value; - } - public resetTimeframe() { - this._timeframe = undefined; - } - // Temporarily expose input value. Use with caution. - public get timeframeInput() { - return this._timeframe; + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); } - - // value - computed: false, optional: false, required: true - private _value?: number; - public get value() { - return this.getNumberAttribute('value'); + public set overrideLabel(value: string) { + this._overrideLabel = value; } - public set value(value: number) { - this._value = value; + public resetOverrideLabel() { + this._overrideLabel = undefined; } // Temporarily expose input value. Use with caution. - public get valueInput() { - return this._value; + public get overrideLabelInput() { + return this._overrideLabel; } } -export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -12523,154 +11399,169 @@ export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionCustomLinkOutputReference { + return new DashboardWidgetTimeseriesDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestFormulaLimit { +export interface DashboardWidgetTimeseriesDefinitionEvent { /** - * The number of results to return + * The event query to use in the widget. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} */ - readonly count?: number; + readonly q: string; /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The execution method for multi-value filters. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tags_execution Dashboard#tags_execution} */ - readonly order?: string; + readonly tagsExecution?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference | DashboardWidgetTimeseriesDefinitionRequestFormulaLimit): any { +export function dashboardWidgetTimeseriesDefinitionEventToTerraform(struct?: DashboardWidgetTimeseriesDefinitionEvent | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - count: cdktf.numberToTerraform(struct!.count), - order: cdktf.stringToTerraform(struct!.order), + q: cdktf.stringToTerraform(struct!.q), + tags_execution: cdktf.stringToTerraform(struct!.tagsExecution), } } -export class DashboardWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionEventOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestFormulaLimit | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._count !== undefined) { + if (this._q !== undefined) { hasAnyValues = true; - internalValueResult.count = this._count; + internalValueResult.q = this._q; } - if (this._order !== undefined) { + if (this._tagsExecution !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.tagsExecution = this._tagsExecution; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestFormulaLimit | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionEvent | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._count = undefined; - this._order = undefined; + this.resolvableValue = undefined; + this._q = undefined; + this._tagsExecution = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._count = value.count; - this._order = value.order; + this.resolvableValue = undefined; + this._q = value.q; + this._tagsExecution = value.tagsExecution; } } - // count - computed: false, optional: true, required: false - private _count?: number; - public get count() { - return this.getNumberAttribute('count'); - } - public set count(value: number) { - this._count = value; + // q - computed: false, optional: false, required: true + private _q?: string; + public get q() { + return this.getStringAttribute('q'); } - public resetCount() { - this._count = undefined; + public set q(value: string) { + this._q = value; } // Temporarily expose input value. Use with caution. - public get countInput() { - return this._count; + public get qInput() { + return this._q; } - // order - computed: false, optional: true, required: false - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // tags_execution - computed: false, optional: true, required: false + private _tagsExecution?: string; + public get tagsExecution() { + return this.getStringAttribute('tags_execution'); } - public set order(value: string) { - this._order = value; + public set tagsExecution(value: string) { + this._tagsExecution = value; } - public resetOrder() { - this._order = undefined; + public resetTagsExecution() { + this._tagsExecution = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get tagsExecutionInput() { + return this._tagsExecution; } } -export interface DashboardWidgetTimeseriesDefinitionRequestFormula { + +export class DashboardWidgetTimeseriesDefinitionEventList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable + /** - * An expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly alias?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * A list of display modes for each table cell. Valid values are `number`, `bar`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} + * @param index the index of the item to return */ - readonly cellDisplayMode?: string; + public get(index: number): DashboardWidgetTimeseriesDefinitionEventOutputReference { + return new DashboardWidgetTimeseriesDefinitionEventOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionMarker { /** - * A string expression built from queries, formulas, and functions. + * How the marker lines are displayed, options are one of {`error`, `warning`, `info`, `ok`} combined with one of {`dashed`, `solid`, `bold`}. Example: `error dashed`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} */ - readonly formulaExpression: string; + readonly displayType?: string; /** - * conditional_formats block + * A label for the line or range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly conditionalFormats?: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; + readonly label?: string; /** - * limit block + * A mathematical expression describing the marker, for example: `y > 1`, `-5 < y < 0`, `y = 19`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} */ - readonly limit?: DashboardWidgetTimeseriesDefinitionRequestFormulaLimit; + readonly value: string; } -export function dashboardWidgetTimeseriesDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionMarkerToTerraform(struct?: DashboardWidgetTimeseriesDefinitionMarker | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - alias: cdktf.stringToTerraform(struct!.alias), - cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), - formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), - conditional_formats: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), - limit: dashboardWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct!.limit), + display_type: cdktf.stringToTerraform(struct!.displayType), + label: cdktf.stringToTerraform(struct!.label), + value: cdktf.stringToTerraform(struct!.value), } } -export class DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionMarkerOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -12684,44 +11575,34 @@ export class DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference ex super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._alias !== undefined) { - hasAnyValues = true; - internalValueResult.alias = this._alias; - } - if (this._cellDisplayMode !== undefined) { - hasAnyValues = true; - internalValueResult.cellDisplayMode = this._cellDisplayMode; - } - if (this._formulaExpression !== undefined) { + if (this._displayType !== undefined) { hasAnyValues = true; - internalValueResult.formulaExpression = this._formulaExpression; + internalValueResult.displayType = this._displayType; } - if (this._conditionalFormats?.internalValue !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; + internalValueResult.label = this._label; } - if (this._limit?.internalValue !== undefined) { + if (this._value !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit?.internalValue; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionMarker | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._alias = undefined; - this._cellDisplayMode = undefined; - this._formulaExpression = undefined; - this._conditionalFormats.internalValue = undefined; - this._limit.internalValue = undefined; + this._displayType = undefined; + this._label = undefined; + this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -12730,94 +11611,60 @@ export class DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference ex else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._alias = value.alias; - this._cellDisplayMode = value.cellDisplayMode; - this._formulaExpression = value.formulaExpression; - this._conditionalFormats.internalValue = value.conditionalFormats; - this._limit.internalValue = value.limit; + this._displayType = value.displayType; + this._label = value.label; + this._value = value.value; } } - // alias - computed: false, optional: true, required: false - private _alias?: string; - public get alias() { - return this.getStringAttribute('alias'); - } - public set alias(value: string) { - this._alias = value; - } - public resetAlias() { - this._alias = undefined; - } - // Temporarily expose input value. Use with caution. - public get aliasInput() { - return this._alias; - } - - // cell_display_mode - computed: false, optional: true, required: false - private _cellDisplayMode?: string; - public get cellDisplayMode() { - return this.getStringAttribute('cell_display_mode'); - } - public set cellDisplayMode(value: string) { - this._cellDisplayMode = value; - } - public resetCellDisplayMode() { - this._cellDisplayMode = undefined; - } - // Temporarily expose input value. Use with caution. - public get cellDisplayModeInput() { - return this._cellDisplayMode; + // display_type - computed: false, optional: true, required: false + private _displayType?: string; + public get displayType() { + return this.getStringAttribute('display_type'); } - - // formula_expression - computed: false, optional: false, required: true - private _formulaExpression?: string; - public get formulaExpression() { - return this.getStringAttribute('formula_expression'); + public set displayType(value: string) { + this._displayType = value; } - public set formulaExpression(value: string) { - this._formulaExpression = value; + public resetDisplayType() { + this._displayType = undefined; } // Temporarily expose input value. Use with caution. - public get formulaExpressionInput() { - return this._formulaExpression; + public get displayTypeInput() { + return this._displayType; } - // conditional_formats - computed: false, optional: true, required: false - private _conditionalFormats = new DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); - public get conditionalFormats() { - return this._conditionalFormats; + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public putConditionalFormats(value: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { - this._conditionalFormats.internalValue = value; + public set label(value: string) { + this._label = value; } - public resetConditionalFormats() { - this._conditionalFormats.internalValue = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get conditionalFormatsInput() { - return this._conditionalFormats.internalValue; + public get labelInput() { + return this._label; } - // limit - computed: false, optional: true, required: false - private _limit = new DashboardWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference(this, "limit"); - public get limit() { - return this._limit; - } - public putLimit(value: DashboardWidgetTimeseriesDefinitionRequestFormulaLimit) { - this._limit.internalValue = value; + // value - computed: false, optional: false, required: true + private _value?: string; + public get value() { + return this.getStringAttribute('value'); } - public resetLimit() { - this._limit.internalValue = undefined; + public set value(value: string) { + this._value = value; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit.internalValue; + public get valueInput() { + return this._value; } } -export class DashboardWidgetTimeseriesDefinitionRequestFormulaList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionMarkerList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -12831,11 +11678,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestFormulaList extends cdktf /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionMarkerOutputReference { + return new DashboardWidgetTimeseriesDefinitionMarkerOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery { /** * The aggregation method. * @@ -12856,7 +11703,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12868,7 +11715,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryTo } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -12879,7 +11726,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutpu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -12897,7 +11744,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -12957,7 +11804,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutpu return this._interval; } } -export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery { /** * The aggregation method. * @@ -12978,7 +11825,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQu readonly order: string; } -export function dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -12990,7 +11837,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQue } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13001,7 +11848,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -13019,7 +11866,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryO return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -13076,7 +11923,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryO return this._order; } } -export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy { +export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy { /** * The facet name. * @@ -13094,10 +11941,10 @@ export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery; } -export function dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13105,11 +11952,11 @@ export function dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerra return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -13123,7 +11970,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputRefe super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -13144,7 +11991,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputRefe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -13198,11 +12045,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputRefe } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -13214,8 +12061,8 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputRefe } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -13229,11 +12076,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByList exten /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute { +export interface DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute { /** * The aggregation method. * @@ -13254,7 +12101,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13266,7 +12113,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeTo } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -13280,7 +12127,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -13301,7 +12148,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -13368,8 +12215,8 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutpu } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -13383,11 +12230,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestLogQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestApmQuery { /** * The name of the index to query. * @@ -13405,22 +12252,22 @@ export interface DashboardWidgetTimeseriesDefinitionRequestLogQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery; + readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestLogQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestApmQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13428,13 +12275,13 @@ export function dashboardWidgetTimeseriesDefinitionRequestLogQueryToTerraform(st return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13445,7 +12292,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestApmQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -13471,7 +12318,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference e return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestApmQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -13520,11 +12367,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference e } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -13536,11 +12383,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference e } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -13552,11 +12399,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference e } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -13567,132 +12414,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference e return this._multiCompute.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestMetadata { - /** - * The expression alias. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias_name Dashboard#alias_name} - */ - readonly aliasName?: string; - /** - * The expression name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#expression Dashboard#expression} - */ - readonly expression: string; -} - -export function dashboardWidgetTimeseriesDefinitionRequestMetadataToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - alias_name: cdktf.stringToTerraform(struct!.aliasName), - expression: cdktf.stringToTerraform(struct!.expression), - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestMetadataOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aliasName !== undefined) { - hasAnyValues = true; - internalValueResult.aliasName = this._aliasName; - } - if (this._expression !== undefined) { - hasAnyValues = true; - internalValueResult.expression = this._expression; - } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aliasName = undefined; - this._expression = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aliasName = value.aliasName; - this._expression = value.expression; - } - } - - // alias_name - computed: false, optional: true, required: false - private _aliasName?: string; - public get aliasName() { - return this.getStringAttribute('alias_name'); - } - public set aliasName(value: string) { - this._aliasName = value; - } - public resetAliasName() { - this._aliasName = undefined; - } - // Temporarily expose input value. Use with caution. - public get aliasNameInput() { - return this._aliasName; - } - - // expression - computed: false, optional: false, required: true - private _expression?: string; - public get expression() { - return this.getStringAttribute('expression'); - } - public set expression(value: string) { - this._expression = value; - } - // Temporarily expose input value. Use with caution. - public get expressionInput() { - return this._expression; - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestMetadataList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestMetadataOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestMetadataOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery { /** * The aggregation method. * @@ -13713,7 +12435,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQu readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13725,7 +12447,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQue } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13736,7 +12458,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -13754,7 +12476,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryO return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -13814,7 +12536,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryO return this._interval; } } -export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery { /** * The aggregation method. * @@ -13835,7 +12557,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySo readonly order: string; } -export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13847,7 +12569,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySor } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -13858,7 +12580,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -13876,7 +12598,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; @@ -13933,7 +12655,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQu return this._order; } } -export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy { +export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy { /** * The facet name. * @@ -13951,10 +12673,10 @@ export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery; + readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery; } -export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -13962,11 +12684,11 @@ export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToT return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort_query: dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -13980,7 +12702,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutput super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -14001,7 +12723,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutput return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -14055,11 +12777,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutput } // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); + private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQueryOutputReference(this, "sort_query"); public get sortQuery() { return this._sortQuery; } - public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery) { + public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBySortQuery) { this._sortQuery.internalValue = value; } public resetSortQuery() { @@ -14071,8 +12793,8 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutput } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -14086,11 +12808,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList e /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute { +export interface DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute { /** * The aggregation method. * @@ -14111,7 +12833,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComp readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14123,7 +12845,7 @@ export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompu } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -14137,7 +12859,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeO super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -14158,7 +12880,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeO return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; @@ -14225,8 +12947,8 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeO } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -14240,11 +12962,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeL /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestAuditQuery { /** * The name of the index to query. * @@ -14262,22 +12984,22 @@ export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQuery { * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery; + readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable; /** * multi_compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; + readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestNetworkQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestAuditQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -14285,13 +13007,13 @@ export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryToTerrafor return { index: cdktf.stringToTerraform(struct!.index), search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), + compute_query: dashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14302,7 +13024,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReferen super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestAuditQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._index !== undefined) { @@ -14328,7 +13050,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReferen return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestAuditQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._index = undefined; @@ -14377,11 +13099,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReferen } // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); + private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQueryOutputReference(this, "compute_query"); public get computeQuery() { return this._computeQuery; } - public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery) { + public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryComputeQuery) { this._computeQuery.internalValue = value; } public resetComputeQuery() { @@ -14393,11 +13115,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReferen } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -14409,11 +13131,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReferen } // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); + private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiComputeList(this, "multi_compute", false); public get multiCompute() { return this._multiCompute; } - public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { + public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestAuditQueryMultiCompute[] | cdktf.IResolvable) { this._multiCompute.internalValue = value; } public resetMultiCompute() { @@ -14424,240 +13146,355 @@ export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReferen return this._multiCompute.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestProcessQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats { /** - * A list of processes. + * The comparator to use. Valid values are `>`, `>=`, `<`, `<=`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#comparator Dashboard#comparator} */ - readonly filterBy?: string[]; + readonly comparator: string; /** - * The max number of items in the filter list. + * The color palette to apply to the background, same values available as palette. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_bg_color Dashboard#custom_bg_color} */ - readonly limit?: number; + readonly customBgColor?: string; /** - * Your chosen metric. + * The color palette to apply to the foreground, same values available as palette. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_fg_color Dashboard#custom_fg_color} + */ + readonly customFgColor?: string; + /** + * Setting this to True hides values. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#hide_value Dashboard#hide_value} + */ + readonly hideValue?: boolean | cdktf.IResolvable; + /** + * Displays an image as the background. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#image_url Dashboard#image_url} + */ + readonly imageUrl?: string; + /** + * The metric from the request to correlate with this conditional format. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly metric: string; + readonly metric?: string; /** - * Your chosen search term. + * The color palette to apply. Valid values are `blue`, `custom_bg`, `custom_image`, `custom_text`, `gray_on_white`, `grey`, `green`, `orange`, `red`, `red_on_white`, `white_on_gray`, `white_on_green`, `green_on_white`, `white_on_red`, `white_on_yellow`, `yellow_on_white`, `black_on_light_yellow`, `black_on_light_green`, `black_on_light_red`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} */ - readonly searchBy?: string; + readonly palette: string; + /** + * Defines the displayed timeframe. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#timeframe Dashboard#timeframe} + */ + readonly timeframe?: string; + /** + * A value for the comparator. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#value Dashboard#value} + */ + readonly value: number; } -export function dashboardWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestProcessQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestProcessQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), - limit: cdktf.numberToTerraform(struct!.limit), + comparator: cdktf.stringToTerraform(struct!.comparator), + custom_bg_color: cdktf.stringToTerraform(struct!.customBgColor), + custom_fg_color: cdktf.stringToTerraform(struct!.customFgColor), + hide_value: cdktf.booleanToTerraform(struct!.hideValue), + image_url: cdktf.stringToTerraform(struct!.imageUrl), metric: cdktf.stringToTerraform(struct!.metric), - search_by: cdktf.stringToTerraform(struct!.searchBy), + palette: cdktf.stringToTerraform(struct!.palette), + timeframe: cdktf.stringToTerraform(struct!.timeframe), + value: cdktf.numberToTerraform(struct!.value), } } -export class DashboardWidgetTimeseriesDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestProcessQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._filterBy !== undefined) { + if (this._comparator !== undefined) { hasAnyValues = true; - internalValueResult.filterBy = this._filterBy; + internalValueResult.comparator = this._comparator; } - if (this._limit !== undefined) { + if (this._customBgColor !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.customBgColor = this._customBgColor; + } + if (this._customFgColor !== undefined) { + hasAnyValues = true; + internalValueResult.customFgColor = this._customFgColor; + } + if (this._hideValue !== undefined) { + hasAnyValues = true; + internalValueResult.hideValue = this._hideValue; + } + if (this._imageUrl !== undefined) { + hasAnyValues = true; + internalValueResult.imageUrl = this._imageUrl; } if (this._metric !== undefined) { hasAnyValues = true; internalValueResult.metric = this._metric; } - if (this._searchBy !== undefined) { + if (this._palette !== undefined) { hasAnyValues = true; - internalValueResult.searchBy = this._searchBy; + internalValueResult.palette = this._palette; + } + if (this._timeframe !== undefined) { + hasAnyValues = true; + internalValueResult.timeframe = this._timeframe; + } + if (this._value !== undefined) { + hasAnyValues = true; + internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._filterBy = undefined; - this._limit = undefined; + this.resolvableValue = undefined; + this._comparator = undefined; + this._customBgColor = undefined; + this._customFgColor = undefined; + this._hideValue = undefined; + this._imageUrl = undefined; this._metric = undefined; - this._searchBy = undefined; + this._palette = undefined; + this._timeframe = undefined; + this._value = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._filterBy = value.filterBy; - this._limit = value.limit; + this.resolvableValue = undefined; + this._comparator = value.comparator; + this._customBgColor = value.customBgColor; + this._customFgColor = value.customFgColor; + this._hideValue = value.hideValue; + this._imageUrl = value.imageUrl; this._metric = value.metric; - this._searchBy = value.searchBy; + this._palette = value.palette; + this._timeframe = value.timeframe; + this._value = value.value; } } - // filter_by - computed: false, optional: true, required: false - private _filterBy?: string[]; - public get filterBy() { - return this.getListAttribute('filter_by'); - } - public set filterBy(value: string[]) { - this._filterBy = value; + // comparator - computed: false, optional: false, required: true + private _comparator?: string; + public get comparator() { + return this.getStringAttribute('comparator'); } - public resetFilterBy() { - this._filterBy = undefined; + public set comparator(value: string) { + this._comparator = value; } // Temporarily expose input value. Use with caution. - public get filterByInput() { - return this._filterBy; + public get comparatorInput() { + return this._comparator; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // custom_bg_color - computed: false, optional: true, required: false + private _customBgColor?: string; + public get customBgColor() { + return this.getStringAttribute('custom_bg_color'); } - public set limit(value: number) { - this._limit = value; + public set customBgColor(value: string) { + this._customBgColor = value; } - public resetLimit() { - this._limit = undefined; + public resetCustomBgColor() { + this._customBgColor = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get customBgColorInput() { + return this._customBgColor; } - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // custom_fg_color - computed: false, optional: true, required: false + private _customFgColor?: string; + public get customFgColor() { + return this.getStringAttribute('custom_fg_color'); } - public set metric(value: string) { - this._metric = value; + public set customFgColor(value: string) { + this._customFgColor = value; + } + public resetCustomFgColor() { + this._customFgColor = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get customFgColorInput() { + return this._customFgColor; } - // search_by - computed: false, optional: true, required: false - private _searchBy?: string; - public get searchBy() { - return this.getStringAttribute('search_by'); + // hide_value - computed: false, optional: true, required: false + private _hideValue?: boolean | cdktf.IResolvable; + public get hideValue() { + return this.getBooleanAttribute('hide_value'); } - public set searchBy(value: string) { - this._searchBy = value; + public set hideValue(value: boolean | cdktf.IResolvable) { + this._hideValue = value; } - public resetSearchBy() { - this._searchBy = undefined; + public resetHideValue() { + this._hideValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchByInput() { - return this._searchBy; + public get hideValueInput() { + return this._hideValue; } -} -export interface DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery { - /** - * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Determines whether stats for upstream or downstream dependencies should be queried. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} - */ - readonly isUpstream?: boolean | cdktf.IResolvable; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName: string; - /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} - */ - readonly primaryTagName?: string; + + // image_url - computed: false, optional: true, required: false + private _imageUrl?: string; + public get imageUrl() { + return this.getStringAttribute('image_url'); + } + public set imageUrl(value: string) { + this._imageUrl = value; + } + public resetImageUrl() { + this._imageUrl = undefined; + } + // Temporarily expose input value. Use with caution. + public get imageUrlInput() { + return this._imageUrl; + } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // palette - computed: false, optional: false, required: true + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } + + // timeframe - computed: false, optional: true, required: false + private _timeframe?: string; + public get timeframe() { + return this.getStringAttribute('timeframe'); + } + public set timeframe(value: string) { + this._timeframe = value; + } + public resetTimeframe() { + this._timeframe = undefined; + } + // Temporarily expose input value. Use with caution. + public get timeframeInput() { + return this._timeframe; + } + + // value - computed: false, optional: false, required: true + private _value?: number; + public get value() { + return this.getNumberAttribute('value'); + } + public set value(value: number) { + this._value = value; + } + // Temporarily expose input value. Use with caution. + public get valueInput() { + return this._value; + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable + /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly primaryTagValue?: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * APM resource. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * @param index the index of the item to return */ - readonly resourceName: string; + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestFormulaLimit { /** - * APM service. + * The number of results to return * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#count Dashboard#count} */ - readonly service: string; + readonly count?: number; /** - * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly stat: string; + readonly order?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference | DashboardWidgetTimeseriesDefinitionRequestFormulaLimit): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + count: cdktf.numberToTerraform(struct!.count), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -14668,619 +13505,351 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQu super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestFormulaLimit | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._isUpstream !== undefined) { - hasAnyValues = true; - internalValueResult.isUpstream = this._isUpstream; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; - } - if (this._primaryTagValue !== undefined) { - hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; - } - if (this._resourceName !== undefined) { - hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; - } - if (this._service !== undefined) { + if (this._count !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.count = this._count; } - if (this._stat !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestFormulaLimit | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._isUpstream = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this._count = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._isUpstream = value.isUpstream; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this._count = value.count; + this._order = value.order; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // count - computed: false, optional: true, required: false + private _count?: number; + public get count() { + return this.getNumberAttribute('count'); } - public set dataSource(value: string) { - this._dataSource = value; + public set count(value: number) { + this._count = value; + } + public resetCount() { + this._count = undefined; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get countInput() { + return this._count; } - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + // order - computed: false, optional: true, required: false + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public set env(value: string) { - this._env = value; + public set order(value: string) { + this._order = value; } - // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; - } - - // is_upstream - computed: false, optional: true, required: false - private _isUpstream?: boolean | cdktf.IResolvable; - public get isUpstream() { - return this.getBooleanAttribute('is_upstream'); - } - public set isUpstream(value: boolean | cdktf.IResolvable) { - this._isUpstream = value; - } - public resetIsUpstream() { - this._isUpstream = undefined; - } - // Temporarily expose input value. Use with caution. - public get isUpstreamInput() { - return this._isUpstream; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // operation_name - computed: false, optional: false, required: true - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; - } - // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; - } - - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); - } - public set primaryTagName(value: string) { - this._primaryTagName = value; - } - public resetPrimaryTagName() { - this._primaryTagName = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; - } - - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); - } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; - } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; - } - - // resource_name - computed: false, optional: false, required: true - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; - } - - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; - } - - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; + public resetOrder() { + this._order = undefined; } // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + public get orderInput() { + return this._order; } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery { - /** - * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * APM Environment. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} - */ - readonly env: string; - /** - * Array of fields to group results by. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} - */ - readonly groupBy?: string[]; - /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} - */ - readonly name: string; - /** - * Name of operation on service. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} - */ - readonly operationName?: string; +export interface DashboardWidgetTimeseriesDefinitionRequestFormula { /** - * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * An expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias Dashboard#alias} */ - readonly primaryTagName?: string; + readonly alias?: string; /** - * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * A list of display modes for each table cell. Valid values are `number`, `bar`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#cell_display_mode Dashboard#cell_display_mode} */ - readonly primaryTagValue?: string; + readonly cellDisplayMode?: string; /** - * APM resource. + * A string expression built from queries, formulas, and functions. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula_expression Dashboard#formula_expression} */ - readonly resourceName?: string; + readonly formulaExpression: string; /** - * APM service. + * conditional_formats block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#conditional_formats Dashboard#conditional_formats} */ - readonly service: string; + readonly conditionalFormats?: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable; /** - * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * limit block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly stat: string; + readonly limit?: DashboardWidgetTimeseriesDefinitionRequestFormulaLimit; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestFormulaToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - env: cdktf.stringToTerraform(struct!.env), - group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), - name: cdktf.stringToTerraform(struct!.name), - operation_name: cdktf.stringToTerraform(struct!.operationName), - primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), - primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), - resource_name: cdktf.stringToTerraform(struct!.resourceName), - service: cdktf.stringToTerraform(struct!.service), - stat: cdktf.stringToTerraform(struct!.stat), + alias: cdktf.stringToTerraform(struct!.alias), + cell_display_mode: cdktf.stringToTerraform(struct!.cellDisplayMode), + formula_expression: cdktf.stringToTerraform(struct!.formulaExpression), + conditional_formats: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsToTerraform, true)(struct!.conditionalFormats), + limit: dashboardWidgetTimeseriesDefinitionRequestFormulaLimitToTerraform(struct!.limit), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._env !== undefined) { - hasAnyValues = true; - internalValueResult.env = this._env; - } - if (this._groupBy !== undefined) { - hasAnyValues = true; - internalValueResult.groupBy = this._groupBy; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._operationName !== undefined) { - hasAnyValues = true; - internalValueResult.operationName = this._operationName; - } - if (this._primaryTagName !== undefined) { + if (this._alias !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagName = this._primaryTagName; + internalValueResult.alias = this._alias; } - if (this._primaryTagValue !== undefined) { + if (this._cellDisplayMode !== undefined) { hasAnyValues = true; - internalValueResult.primaryTagValue = this._primaryTagValue; + internalValueResult.cellDisplayMode = this._cellDisplayMode; } - if (this._resourceName !== undefined) { + if (this._formulaExpression !== undefined) { hasAnyValues = true; - internalValueResult.resourceName = this._resourceName; + internalValueResult.formulaExpression = this._formulaExpression; } - if (this._service !== undefined) { + if (this._conditionalFormats?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.service = this._service; + internalValueResult.conditionalFormats = this._conditionalFormats?.internalValue; } - if (this._stat !== undefined) { + if (this._limit?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.stat = this._stat; + internalValueResult.limit = this._limit?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestFormula | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._env = undefined; - this._groupBy = undefined; - this._name = undefined; - this._operationName = undefined; - this._primaryTagName = undefined; - this._primaryTagValue = undefined; - this._resourceName = undefined; - this._service = undefined; - this._stat = undefined; + this.resolvableValue = undefined; + this._alias = undefined; + this._cellDisplayMode = undefined; + this._formulaExpression = undefined; + this._conditionalFormats.internalValue = undefined; + this._limit.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._env = value.env; - this._groupBy = value.groupBy; - this._name = value.name; - this._operationName = value.operationName; - this._primaryTagName = value.primaryTagName; - this._primaryTagValue = value.primaryTagValue; - this._resourceName = value.resourceName; - this._service = value.service; - this._stat = value.stat; + this.resolvableValue = undefined; + this._alias = value.alias; + this._cellDisplayMode = value.cellDisplayMode; + this._formulaExpression = value.formulaExpression; + this._conditionalFormats.internalValue = value.conditionalFormats; + this._limit.internalValue = value.limit; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + // alias - computed: false, optional: true, required: false + private _alias?: string; + public get alias() { + return this.getStringAttribute('alias'); } - - // env - computed: false, optional: false, required: true - private _env?: string; - public get env() { - return this.getStringAttribute('env'); + public set alias(value: string) { + this._alias = value; } - public set env(value: string) { - this._env = value; + public resetAlias() { + this._alias = undefined; } // Temporarily expose input value. Use with caution. - public get envInput() { - return this._env; + public get aliasInput() { + return this._alias; } - // group_by - computed: false, optional: true, required: false - private _groupBy?: string[]; - public get groupBy() { - return this.getListAttribute('group_by'); - } - public set groupBy(value: string[]) { - this._groupBy = value; - } - public resetGroupBy() { - this._groupBy = undefined; - } - // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy; + // cell_display_mode - computed: false, optional: true, required: false + private _cellDisplayMode?: string; + public get cellDisplayMode() { + return this.getStringAttribute('cell_display_mode'); } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); + public set cellDisplayMode(value: string) { + this._cellDisplayMode = value; } - public set name(value: string) { - this._name = value; + public resetCellDisplayMode() { + this._cellDisplayMode = undefined; } // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + public get cellDisplayModeInput() { + return this._cellDisplayMode; } - // operation_name - computed: false, optional: true, required: false - private _operationName?: string; - public get operationName() { - return this.getStringAttribute('operation_name'); - } - public set operationName(value: string) { - this._operationName = value; + // formula_expression - computed: false, optional: false, required: true + private _formulaExpression?: string; + public get formulaExpression() { + return this.getStringAttribute('formula_expression'); } - public resetOperationName() { - this._operationName = undefined; + public set formulaExpression(value: string) { + this._formulaExpression = value; } // Temporarily expose input value. Use with caution. - public get operationNameInput() { - return this._operationName; + public get formulaExpressionInput() { + return this._formulaExpression; } - // primary_tag_name - computed: false, optional: true, required: false - private _primaryTagName?: string; - public get primaryTagName() { - return this.getStringAttribute('primary_tag_name'); + // conditional_formats - computed: false, optional: true, required: false + private _conditionalFormats = new DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormatsList(this, "conditional_formats", false); + public get conditionalFormats() { + return this._conditionalFormats; } - public set primaryTagName(value: string) { - this._primaryTagName = value; + public putConditionalFormats(value: DashboardWidgetTimeseriesDefinitionRequestFormulaConditionalFormats[] | cdktf.IResolvable) { + this._conditionalFormats.internalValue = value; } - public resetPrimaryTagName() { - this._primaryTagName = undefined; + public resetConditionalFormats() { + this._conditionalFormats.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagNameInput() { - return this._primaryTagName; + public get conditionalFormatsInput() { + return this._conditionalFormats.internalValue; } - // primary_tag_value - computed: false, optional: true, required: false - private _primaryTagValue?: string; - public get primaryTagValue() { - return this.getStringAttribute('primary_tag_value'); + // limit - computed: false, optional: true, required: false + private _limit = new DashboardWidgetTimeseriesDefinitionRequestFormulaLimitOutputReference(this, "limit"); + public get limit() { + return this._limit; } - public set primaryTagValue(value: string) { - this._primaryTagValue = value; + public putLimit(value: DashboardWidgetTimeseriesDefinitionRequestFormulaLimit) { + this._limit.internalValue = value; } - public resetPrimaryTagValue() { - this._primaryTagValue = undefined; + public resetLimit() { + this._limit.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get primaryTagValueInput() { - return this._primaryTagValue; + public get limitInput() { + return this._limit.internalValue; } +} - // resource_name - computed: false, optional: true, required: false - private _resourceName?: string; - public get resourceName() { - return this.getStringAttribute('resource_name'); - } - public set resourceName(value: string) { - this._resourceName = value; - } - public resetResourceName() { - this._resourceName = undefined; - } - // Temporarily expose input value. Use with caution. - public get resourceNameInput() { - return this._resourceName; - } +export class DashboardWidgetTimeseriesDefinitionRequestFormulaList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable - // service - computed: false, optional: false, required: true - private _service?: string; - public get service() { - return this.getStringAttribute('service'); - } - public set service(value: string) { - this._service = value; - } - // Temporarily expose input value. Use with caution. - public get serviceInput() { - return this._service; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) } - // stat - computed: false, optional: false, required: true - private _stat?: string; - public get stat() { - return this.getStringAttribute('stat'); - } - public set stat(value: string) { - this._stat = value; - } - // Temporarily expose input value. Use with caution. - public get statInput() { - return this._stat; + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestFormulaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute { +export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery { /** - * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The aggregation method. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * A time interval in milliseconds. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly interval?: number; + readonly facet?: string; /** - * The measurable attribute to compute. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly metric?: string; + readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), interval: cdktf.numberToTerraform(struct!.interval), - metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._interval !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.facet = this._facet; } - if (this._metric !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; this._aggregation = undefined; + this._facet = undefined; this._interval = undefined; - this._metric = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; this._aggregation = value.aggregation; + this._facet = value.facet; this._interval = value.interval; - this._metric = value.metric; } } @@ -15297,6 +13866,22 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOut return this._aggregation; } + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + // interval - computed: false, optional: true, required: false private _interval?: number; public get interval() { @@ -15312,77 +13897,41 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOut public get intervalInput() { return this._interval; } - - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - public resetMetric() { - this._metric = undefined; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort { +export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery { /** - * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. + * The aggregation method. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * The metric used for sorting group by results. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly metric?: string; + readonly facet?: string; /** - * Direction of sort. Valid values are `asc`, `desc`. + * Widget sorting methods. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly order?: string; + readonly order: string; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort): any { +export function dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), - metric: cdktf.stringToTerraform(struct!.metric), + facet: cdktf.stringToTerraform(struct!.facet), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15393,16 +13942,16 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySor super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._metric !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.metric = this._metric; + internalValueResult.facet = this._facet; } if (this._order !== undefined) { hasAnyValues = true; @@ -15411,17 +13960,17 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySor return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; - this._metric = undefined; + this._facet = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; - this._metric = value.metric; + this._facet = value.facet; this._order = value.order; } } @@ -15439,23 +13988,23 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySor return this._aggregation; } - // metric - computed: false, optional: true, required: false - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set metric(value: string) { - this._metric = value; + public set facet(value: string) { + this._facet = value; } - public resetMetric() { - this._metric = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; + public get facetInput() { + return this._facet; } - // order - computed: false, optional: true, required: false + // order - computed: false, optional: false, required: true private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -15463,36 +14012,33 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySor public set order(value: string) { this._order = value; } - public resetOrder() { - this._order = undefined; - } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy { +export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy { /** - * The event facet. + * The facet name. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly facet: string; + readonly facet?: string; /** - * The number of groups to return. + * The maximum number of items in the group. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort block + * sort_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} */ - readonly sort?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort; + readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -15500,11 +14046,11 @@ export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort: dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), + sort_query: dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryToTerraform(struct!.sortQuery), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -15518,7 +14064,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOut super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -15532,20 +14078,20 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOut hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sort?.internalValue !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort?.internalValue; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._facet = undefined; this._limit = undefined; - this._sort.internalValue = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -15556,11 +14102,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOut this.resolvableValue = undefined; this._facet = value.facet; this._limit = value.limit; - this._sort.internalValue = value.sort; + this._sortQuery.internalValue = value.sortQuery; } } - // facet - computed: false, optional: false, required: true + // facet - computed: false, optional: true, required: false private _facet?: string; public get facet() { return this.getStringAttribute('facet'); @@ -15568,6 +14114,9 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOut public set facet(value: string) { this._facet = value; } + public resetFacet() { + this._facet = undefined; + } // Temporarily expose input value. Use with caution. public get facetInput() { return this._facet; @@ -15589,25 +14138,25 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOut return this._limit; } - // sort - computed: false, optional: true, required: false - private _sort = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); - public get sort() { - return this._sort; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putSort(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort) { - this._sort.internalValue = value; + public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetSort() { - this._sort.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -15621,129 +14170,212 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByLis /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch { +export interface DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute { /** - * The events search string. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly query: string; + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch): any { +export function dashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - query: cdktf.stringToTerraform(struct!.query), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._query !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._query = undefined; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._query = value.query; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public set query(value: string) { - this._query = value; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery { + +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable + /** - * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly dataSource: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * An array of index names to query in the stream. + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestLogQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly indexes?: string[]; + readonly index: string; /** - * The name of query for use in formulas. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly name: string; + readonly searchQuery?: string; /** - * compute block + * compute_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} */ - readonly compute: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; + readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable; /** - * search block + * multi_compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} */ - readonly search?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch; + readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestLogQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - data_source: cdktf.stringToTerraform(struct!.dataSource), - indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), - name: cdktf.stringToTerraform(struct!.name), - compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), - search: dashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -15754,118 +14386,102 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputRefe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestLogQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._indexes !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.indexes = this._indexes; + internalValueResult.index = this._index; } - if (this._name !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.searchQuery = this._searchQuery; } - if (this._compute?.internalValue !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.compute = this._compute?.internalValue; + internalValueResult.computeQuery = this._computeQuery?.internalValue; } if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._search?.internalValue !== undefined) { + if (this._multiCompute?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.search = this._search?.internalValue; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestLogQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._dataSource = undefined; - this._indexes = undefined; - this._name = undefined; - this._compute.internalValue = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; this._groupBy.internalValue = undefined; - this._search.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._dataSource = value.dataSource; - this._indexes = value.indexes; - this._name = value.name; - this._compute.internalValue = value.compute; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; this._groupBy.internalValue = value.groupBy; - this._search.internalValue = value.search; + this._multiCompute.internalValue = value.multiCompute; } } - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set dataSource(value: string) { - this._dataSource = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get indexInput() { + return this._index; } - // indexes - computed: false, optional: true, required: false - private _indexes?: string[]; - public get indexes() { - return this.getListAttribute('indexes'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set indexes(value: string[]) { - this._indexes = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetIndexes() { - this._indexes = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get indexesInput() { - return this._indexes; + public get searchQueryInput() { + return this._searchQuery; } - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - - // compute - computed: false, optional: false, required: true - private _compute = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList(this, "compute", false); - public get compute() { - return this._compute; + public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryComputeQuery) { + this._computeQuery.internalValue = value; } - public putCompute(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { - this._compute.internalValue = value; + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get computeInput() { - return this._compute.internalValue; + public get computeQueryInput() { + return this._computeQuery.internalValue; } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -15876,246 +14492,181 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputRefe return this._groupBy.internalValue; } - // search - computed: false, optional: true, required: false - private _search = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); - public get search() { - return this._search; + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; } - public putSearch(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch) { - this._search.internalValue = value; + public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestLogQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; } - public resetSearch() { - this._search.internalValue = undefined; + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get searchInput() { - return this._search.internalValue; + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; +export interface DashboardWidgetTimeseriesDefinitionRequestMetadata { /** - * The data source for metrics queries. + * The expression alias. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#alias_name Dashboard#alias_name} */ - readonly dataSource?: string; + readonly aliasName?: string; /** - * The name of the query for use in formulas. + * The expression name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#expression Dashboard#expression} */ - readonly name: string; - /** - * The metrics query definition. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} - */ - readonly query: string; + readonly expression: string; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestMetadataToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - name: cdktf.stringToTerraform(struct!.name), - query: cdktf.stringToTerraform(struct!.query), + alias_name: cdktf.stringToTerraform(struct!.aliasName), + expression: cdktf.stringToTerraform(struct!.expression), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestMetadataOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._name !== undefined) { + if (this._aliasName !== undefined) { hasAnyValues = true; - internalValueResult.name = this._name; + internalValueResult.aliasName = this._aliasName; } - if (this._query !== undefined) { + if (this._expression !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query; + internalValueResult.expression = this._expression; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestMetadata | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._name = undefined; - this._query = undefined; + this.resolvableValue = undefined; + this._aliasName = undefined; + this._expression = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._name = value.name; - this._query = value.query; + this.resolvableValue = undefined; + this._aliasName = value.aliasName; + this._expression = value.expression; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); + // alias_name - computed: false, optional: true, required: false + private _aliasName?: string; + public get aliasName() { + return this.getStringAttribute('alias_name'); } - public set aggregator(value: string) { - this._aggregator = value; + public set aliasName(value: string) { + this._aliasName = value; } - public resetAggregator() { - this._aggregator = undefined; + public resetAliasName() { + this._aliasName = undefined; } // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; + public get aliasNameInput() { + return this._aliasName; } - // data_source - computed: false, optional: true, required: false - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; + // expression - computed: false, optional: false, required: true + private _expression?: string; + public get expression() { + return this.getStringAttribute('expression'); } - public resetDataSource() { - this._dataSource = undefined; + public set expression(value: string) { + this._expression = value; } // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; + public get expressionInput() { + return this._expression; } +} - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } +export class DashboardWidgetTimeseriesDefinitionRequestMetadataList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable - // query - computed: false, optional: false, required: true - private _query?: string; - public get query() { - return this.getStringAttribute('query'); - } - public set query(value: string) { - this._query = value; - } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query; - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery { - /** - * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} - */ - readonly aggregator?: string; - /** - * The data source for process queries. Valid values are `process`, `container`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} - */ - readonly dataSource: string; - /** - * Whether to normalize the CPU percentages. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} - */ - readonly isNormalizedCpu?: boolean | cdktf.IResolvable; - /** - * The number of hits to return. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} - */ - readonly limit?: number; /** - * The process metric name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly metric: string; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The name of query for use in formulas. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} + * @param index the index of the item to return */ - readonly name: string; + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestMetadataOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestMetadataOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery { /** - * The direction of the sort. Valid values are `asc`, `desc`. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly sort?: string; + readonly aggregation: string; /** - * An array of tags to filter by. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly tagFilters?: string[]; + readonly facet?: string; /** - * The text to use as a filter. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly textFilter?: string; + readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregator: cdktf.stringToTerraform(struct!.aggregator), - data_source: cdktf.stringToTerraform(struct!.dataSource), - is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), - limit: cdktf.numberToTerraform(struct!.limit), - metric: cdktf.stringToTerraform(struct!.metric), - name: cdktf.stringToTerraform(struct!.name), - sort: cdktf.stringToTerraform(struct!.sort), - tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), - text_filter: cdktf.stringToTerraform(struct!.textFilter), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16126,408 +14677,343 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputRe super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregator !== undefined) { - hasAnyValues = true; - internalValueResult.aggregator = this._aggregator; - } - if (this._dataSource !== undefined) { - hasAnyValues = true; - internalValueResult.dataSource = this._dataSource; - } - if (this._isNormalizedCpu !== undefined) { - hasAnyValues = true; - internalValueResult.isNormalizedCpu = this._isNormalizedCpu; - } - if (this._limit !== undefined) { - hasAnyValues = true; - internalValueResult.limit = this._limit; - } - if (this._metric !== undefined) { - hasAnyValues = true; - internalValueResult.metric = this._metric; - } - if (this._name !== undefined) { - hasAnyValues = true; - internalValueResult.name = this._name; - } - if (this._sort !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.sort = this._sort; + internalValueResult.aggregation = this._aggregation; } - if (this._tagFilters !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.tagFilters = this._tagFilters; + internalValueResult.facet = this._facet; } - if (this._textFilter !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.textFilter = this._textFilter; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregator = undefined; - this._dataSource = undefined; - this._isNormalizedCpu = undefined; - this._limit = undefined; - this._metric = undefined; - this._name = undefined; - this._sort = undefined; - this._tagFilters = undefined; - this._textFilter = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregator = value.aggregator; - this._dataSource = value.dataSource; - this._isNormalizedCpu = value.isNormalizedCpu; - this._limit = value.limit; - this._metric = value.metric; - this._name = value.name; - this._sort = value.sort; - this._tagFilters = value.tagFilters; - this._textFilter = value.textFilter; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // aggregator - computed: false, optional: true, required: false - private _aggregator?: string; - public get aggregator() { - return this.getStringAttribute('aggregator'); - } - public set aggregator(value: string) { - this._aggregator = value; - } - public resetAggregator() { - this._aggregator = undefined; - } - // Temporarily expose input value. Use with caution. - public get aggregatorInput() { - return this._aggregator; - } - - // data_source - computed: false, optional: false, required: true - private _dataSource?: string; - public get dataSource() { - return this.getStringAttribute('data_source'); - } - public set dataSource(value: string) { - this._dataSource = value; - } - // Temporarily expose input value. Use with caution. - public get dataSourceInput() { - return this._dataSource; - } - - // is_normalized_cpu - computed: false, optional: true, required: false - private _isNormalizedCpu?: boolean | cdktf.IResolvable; - public get isNormalizedCpu() { - return this.getBooleanAttribute('is_normalized_cpu'); - } - public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { - this._isNormalizedCpu = value; - } - public resetIsNormalizedCpu() { - this._isNormalizedCpu = undefined; - } - // Temporarily expose input value. Use with caution. - public get isNormalizedCpuInput() { - return this._isNormalizedCpu; - } - - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); - } - public set limit(value: number) { - this._limit = value; - } - public resetLimit() { - this._limit = undefined; - } - // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; - } - - // metric - computed: false, optional: false, required: true - private _metric?: string; - public get metric() { - return this.getStringAttribute('metric'); - } - public set metric(value: string) { - this._metric = value; - } - // Temporarily expose input value. Use with caution. - public get metricInput() { - return this._metric; - } - - // name - computed: false, optional: false, required: true - private _name?: string; - public get name() { - return this.getStringAttribute('name'); - } - public set name(value: string) { - this._name = value; - } - // Temporarily expose input value. Use with caution. - public get nameInput() { - return this._name; - } - - // sort - computed: false, optional: true, required: false - private _sort?: string; - public get sort() { - return this.getStringAttribute('sort'); - } - public set sort(value: string) { - this._sort = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetSort() { - this._sort = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get sortInput() { - return this._sort; + public get aggregationInput() { + return this._aggregation; } - // tag_filters - computed: false, optional: true, required: false - private _tagFilters?: string[]; - public get tagFilters() { - return this.getListAttribute('tag_filters'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set tagFilters(value: string[]) { - this._tagFilters = value; + public set facet(value: string) { + this._facet = value; } - public resetTagFilters() { - this._tagFilters = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get tagFiltersInput() { - return this._tagFilters; + public get facetInput() { + return this._facet; } - // text_filter - computed: false, optional: true, required: false - private _textFilter?: string; - public get textFilter() { - return this.getStringAttribute('text_filter'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set textFilter(value: string) { - this._textFilter = value; + public set interval(value: number) { + this._interval = value; } - public resetTextFilter() { - this._textFilter = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get textFilterInput() { - return this._textFilter; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetTimeseriesDefinitionRequestQuery { - /** - * apm_dependency_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} - */ - readonly apmDependencyStatsQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery; - /** - * apm_resource_stats_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} - */ - readonly apmResourceStatsQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery; +export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery { /** - * event_query block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly eventQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery; + readonly aggregation: string; /** - * metric_query block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly metricQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery; + readonly facet?: string; /** - * process_query block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly processQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery; + readonly order: string; } -export function dashboardWidgetTimeseriesDefinitionRequestQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - apm_dependency_stats_query: dashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), - apm_resource_stats_query: dashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), - event_query: dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), - metric_query: dashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), - process_query: dashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._apmDependencyStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; - } - if (this._apmResourceStatsQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; - } - if (this._eventQuery?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.eventQuery = this._eventQuery?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._metricQuery?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.metricQuery = this._metricQuery?.internalValue; + internalValueResult.facet = this._facet; } - if (this._processQuery?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = undefined; - this._apmResourceStatsQuery.internalValue = undefined; - this._eventQuery.internalValue = undefined; - this._metricQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; - this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; - this._eventQuery.internalValue = value.eventQuery; - this._metricQuery.internalValue = value.metricQuery; - this._processQuery.internalValue = value.processQuery; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // apm_dependency_stats_query - computed: false, optional: true, required: false - private _apmDependencyStatsQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); - public get apmDependencyStatsQuery() { - return this._apmDependencyStatsQuery; - } - public putApmDependencyStatsQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery) { - this._apmDependencyStatsQuery.internalValue = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetApmDependencyStatsQuery() { - this._apmDependencyStatsQuery.internalValue = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get apmDependencyStatsQueryInput() { - return this._apmDependencyStatsQuery.internalValue; + public get aggregationInput() { + return this._aggregation; } - // apm_resource_stats_query - computed: false, optional: true, required: false - private _apmResourceStatsQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); - public get apmResourceStatsQuery() { - return this._apmResourceStatsQuery; + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public putApmResourceStatsQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery) { - this._apmResourceStatsQuery.internalValue = value; + public set facet(value: string) { + this._facet = value; } - public resetApmResourceStatsQuery() { - this._apmResourceStatsQuery.internalValue = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get apmResourceStatsQueryInput() { - return this._apmResourceStatsQuery.internalValue; + public get facetInput() { + return this._facet; } - // event_query - computed: false, optional: true, required: false - private _eventQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); - public get eventQuery() { - return this._eventQuery; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public putEventQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery) { - this._eventQuery.internalValue = value; + public set order(value: string) { + this._order = value; } - public resetEventQuery() { - this._eventQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery; +} + +export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryToTerraform(struct!.sortQuery), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get eventQueryInput() { - return this._eventQuery.internalValue; + public get facetInput() { + return this._facet; } - // metric_query - computed: false, optional: true, required: false - private _metricQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); - public get metricQuery() { - return this._metricQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putMetricQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery) { - this._metricQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetMetricQuery() { - this._metricQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get metricQueryInput() { - return this._metricQuery.internalValue; + public get limitInput() { + return this._limit; } - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public putProcessQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery) { - this._processQuery.internalValue = value; + public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetTimeseriesDefinitionRequestQueryList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -16541,11 +15027,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestQueryList extends cdktf.C /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestQueryOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute { /** * The aggregation method. * @@ -16566,7 +15052,7 @@ export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -16578,18 +15064,24 @@ export function dashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryTo } } -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -16607,15 +15099,21 @@ export class DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutpu return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -16667,40 +15165,74 @@ export class DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutpu return this._interval; } } -export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery { + +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable + /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly aggregation: string; - /** - * The facet name. + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestNetworkQuery { + /** + * The name of the index to query. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} */ - readonly facet?: string; + readonly index: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * The search query to use. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} */ - readonly order: string; + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable; } -export function dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestNetworkQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeToTerraform, true)(struct!.multiCompute), } } -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -16711,184 +15243,232 @@ export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryO super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestNetworkQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._index !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.index = this._index; } - if (this._facet !== undefined) { + if (this._searchQuery !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.searchQuery = this._searchQuery; } - if (this._order !== undefined) { + if (this._computeQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.order = this._order; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); } - public set aggregation(value: string) { - this._aggregation = value; + public set index(value: string) { + this._index = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get indexInput() { + return this._index; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); } - public set facet(value: string) { - this._facet = value; + public set searchQuery(value: string) { + this._searchQuery = value; } - public resetFacet() { - this._facet = undefined; + public resetSearchQuery() { + this._searchQuery = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get searchQueryInput() { + return this._searchQuery; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; } - public set order(value: string) { - this._order = value; + public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy { +export interface DashboardWidgetTimeseriesDefinitionRequestProcessQuery { /** - * The facet name. + * A list of processes. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#filter_by Dashboard#filter_by} */ - readonly facet?: string; + readonly filterBy?: string[]; /** - * The maximum number of items in the group. + * The max number of items in the filter list. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort_query block + * Your chosen metric. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery; + readonly metric: string; + /** + * Your chosen search term. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_by Dashboard#search_by} + */ + readonly searchBy?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestProcessQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), + filter_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.filterBy), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), + metric: cdktf.stringToTerraform(struct!.metric), + search_by: cdktf.stringToTerraform(struct!.searchBy), } } -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._filterBy !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.filterBy = this._filterBy; } if (this._limit !== undefined) { hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.metric = this._metric; + } + if (this._searchBy !== undefined) { + hasAnyValues = true; + internalValueResult.searchBy = this._searchBy; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; + this._filterBy = undefined; this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._metric = undefined; + this._searchBy = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; + this._filterBy = value.filterBy; this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._metric = value.metric; + this._searchBy = value.searchBy; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // filter_by - computed: false, optional: true, required: false + private _filterBy?: string[]; + public get filterBy() { + return this.getListAttribute('filter_by'); } - public set facet(value: string) { - this._facet = value; + public set filterBy(value: string[]) { + this._filterBy = value; } - public resetFacet() { - this._facet = undefined; + public resetFilterBy() { + this._filterBy = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get filterByInput() { + return this._filterBy; } // limit - computed: false, optional: true, required: false @@ -16907,244 +15487,425 @@ export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputRefe return this._limit; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set metric(value: string) { + this._metric = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } + + // search_by - computed: false, optional: true, required: false + private _searchBy?: string; + public get searchBy() { + return this.getStringAttribute('search_by'); + } + public set searchBy(value: string) { + this._searchBy = value; + } + public resetSearchBy() { + this._searchBy = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get searchByInput() { + return this._searchBy; } } - -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for APM Dependency Stats queries. Valid values are `apm_dependency_stats`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * APM Environment. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute { + readonly env: string; /** - * The aggregation method. + * Determines whether stats for upstream or downstream dependencies should be queried. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_upstream Dashboard#is_upstream} */ - readonly aggregation: string; + readonly isUpstream?: boolean | cdktf.IResolvable; /** - * The facet name. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly facet?: string; + readonly name: string; /** - * Define the time interval in seconds. + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly interval?: number; + readonly operationName: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `avg_duration`, `avg_root_duration`, `avg_spans_per_trace`, `error_rate`, `pct_exec_time`, `pct_of_traces`, `total_traces_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + is_upstream: cdktf.booleanToTerraform(struct!.isUpstream), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.dataSource = this._dataSource; } - if (this._facet !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.env = this._env; } - if (this._interval !== undefined) { + if (this._isUpstream !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.isUpstream = this._isUpstream; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._operationName !== undefined) { + hasAnyValues = true; + internalValueResult.operationName = this._operationName; + } + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; + } + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._dataSource = undefined; + this._env = undefined; + this._isUpstream = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._dataSource = value.dataSource; + this._env = value.env; + this._isUpstream = value.isUpstream; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set aggregation(value: string) { - this._aggregation = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get dataSourceInput() { + return this._dataSource; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public resetFacet() { - this._facet = undefined; + public set env(value: string) { + this._env = value; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get envInput() { + return this._env; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // is_upstream - computed: false, optional: true, required: false + private _isUpstream?: boolean | cdktf.IResolvable; + public get isUpstream() { + return this.getBooleanAttribute('is_upstream'); } - public set interval(value: number) { - this._interval = value; + public set isUpstream(value: boolean | cdktf.IResolvable) { + this._isUpstream = value; } - public resetInterval() { - this._interval = undefined; + public resetIsUpstream() { + this._isUpstream = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get isUpstreamInput() { + return this._isUpstream; } -} -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // operation_name - computed: false, optional: false, required: true + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + // Temporarily expose input value. Use with caution. + public get operationNameInput() { + return this._operationName; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); + } + public set primaryTagName(value: string) { + this._primaryTagName = value; + } + public resetPrimaryTagName() { + this._primaryTagName = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagNameInput() { + return this._primaryTagName; + } + + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); + } + public set primaryTagValue(value: string) { + this._primaryTagValue = value; + } + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: false, required: true + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetTimeseriesDefinitionRequestRumQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery { /** - * The name of the index to query. + * The data source for APM Resource Stats queries. Valid values are `apm_resource_stats`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly index: string; + readonly dataSource: string; /** - * The search query to use. + * APM Environment. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#env Dashboard#env} */ - readonly searchQuery?: string; + readonly env: string; /** - * compute_query block + * Array of fields to group results by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery; + readonly groupBy?: string[]; /** - * group_by block + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + readonly name: string; /** - * multi_compute block + * Name of operation on service. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#operation_name Dashboard#operation_name} */ - readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; + readonly operationName?: string; + /** + * The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_name Dashboard#primary_tag_name} + */ + readonly primaryTagName?: string; + /** + * Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#primary_tag_value Dashboard#primary_tag_value} + */ + readonly primaryTagValue?: string; + /** + * APM resource. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#resource_name Dashboard#resource_name} + */ + readonly resourceName?: string; + /** + * APM service. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#service Dashboard#service} + */ + readonly service: string; + /** + * APM statistic. Valid values are `errors`, `error_rate`, `hits`, `latency_avg`, `latency_distribution`, `latency_max`, `latency_p50`, `latency_p75`, `latency_p90`, `latency_p95`, `latency_p99`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#stat Dashboard#stat} + */ + readonly stat: string; } -export function dashboardWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestRumQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + data_source: cdktf.stringToTerraform(struct!.dataSource), + env: cdktf.stringToTerraform(struct!.env), + group_by: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.groupBy), + name: cdktf.stringToTerraform(struct!.name), + operation_name: cdktf.stringToTerraform(struct!.operationName), + primary_tag_name: cdktf.stringToTerraform(struct!.primaryTagName), + primary_tag_value: cdktf.stringToTerraform(struct!.primaryTagValue), + resource_name: cdktf.stringToTerraform(struct!.resourceName), + service: cdktf.stringToTerraform(struct!.service), + stat: cdktf.stringToTerraform(struct!.stat), } } -export class DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17155,202 +15916,312 @@ export class DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference e super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.dataSource = this._dataSource; } - if (this._searchQuery !== undefined) { + if (this._env !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.env = this._env; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._groupBy !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.groupBy = this._groupBy; } - if (this._groupBy?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.groupBy = this._groupBy?.internalValue; + internalValueResult.name = this._name; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._operationName !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.operationName = this._operationName; } - return hasAnyValues ? internalValueResult : undefined; - } - - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; - this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + if (this._primaryTagName !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagName = this._primaryTagName; } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; - this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + if (this._primaryTagValue !== undefined) { + hasAnyValues = true; + internalValueResult.primaryTagValue = this._primaryTagValue; + } + if (this._resourceName !== undefined) { + hasAnyValues = true; + internalValueResult.resourceName = this._resourceName; + } + if (this._service !== undefined) { + hasAnyValues = true; + internalValueResult.service = this._service; + } + if (this._stat !== undefined) { + hasAnyValues = true; + internalValueResult.stat = this._stat; } + return hasAnyValues ? internalValueResult : undefined; } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._dataSource = undefined; + this._env = undefined; + this._groupBy = undefined; + this._name = undefined; + this._operationName = undefined; + this._primaryTagName = undefined; + this._primaryTagValue = undefined; + this._resourceName = undefined; + this._service = undefined; + this._stat = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._dataSource = value.dataSource; + this._env = value.env; + this._groupBy = value.groupBy; + this._name = value.name; + this._operationName = value.operationName; + this._primaryTagName = value.primaryTagName; + this._primaryTagValue = value.primaryTagValue; + this._resourceName = value.resourceName; + this._service = value.service; + this._stat = value.stat; + } } - public set index(value: string) { - this._index = value; + + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); + } + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get dataSourceInput() { + return this._dataSource; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // env - computed: false, optional: false, required: true + private _env?: string; + public get env() { + return this.getStringAttribute('env'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set env(value: string) { + this._env = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + // Temporarily expose input value. Use with caution. + public get envInput() { + return this._env; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy?: string[]; + public get groupBy() { + return this.getListAttribute('group_by'); + } + public set groupBy(value: string[]) { + this._groupBy = value; + } + public resetGroupBy() { + this._groupBy = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get groupByInput() { + return this._groupBy; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // operation_name - computed: false, optional: true, required: false + private _operationName?: string; + public get operationName() { + return this.getStringAttribute('operation_name'); + } + public set operationName(value: string) { + this._operationName = value; + } + public resetOperationName() { + this._operationName = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get operationNameInput() { + return this._operationName; } - // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByList(this, "group_by", false); - public get groupBy() { - return this._groupBy; + // primary_tag_name - computed: false, optional: true, required: false + private _primaryTagName?: string; + public get primaryTagName() { + return this.getStringAttribute('primary_tag_name'); } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { - this._groupBy.internalValue = value; + public set primaryTagName(value: string) { + this._primaryTagName = value; } - public resetGroupBy() { - this._groupBy.internalValue = undefined; + public resetPrimaryTagName() { + this._primaryTagName = undefined; } // Temporarily expose input value. Use with caution. - public get groupByInput() { - return this._groupBy.internalValue; + public get primaryTagNameInput() { + return this._primaryTagName; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // primary_tag_value - computed: false, optional: true, required: false + private _primaryTagValue?: string; + public get primaryTagValue() { + return this.getStringAttribute('primary_tag_value'); } - public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public set primaryTagValue(value: string) { + this._primaryTagValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetPrimaryTagValue() { + this._primaryTagValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get primaryTagValueInput() { + return this._primaryTagValue; + } + + // resource_name - computed: false, optional: true, required: false + private _resourceName?: string; + public get resourceName() { + return this.getStringAttribute('resource_name'); + } + public set resourceName(value: string) { + this._resourceName = value; + } + public resetResourceName() { + this._resourceName = undefined; + } + // Temporarily expose input value. Use with caution. + public get resourceNameInput() { + return this._resourceName; + } + + // service - computed: false, optional: false, required: true + private _service?: string; + public get service() { + return this.getStringAttribute('service'); + } + public set service(value: string) { + this._service = value; + } + // Temporarily expose input value. Use with caution. + public get serviceInput() { + return this._service; + } + + // stat - computed: false, optional: false, required: true + private _stat?: string; + public get stat() { + return this.getStringAttribute('stat'); + } + public set stat(value: string) { + this._stat = value; + } + // Temporarily expose input value. Use with caution. + public get statInput() { + return this._stat; } } -export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute { /** - * The aggregation method. + * The aggregation methods for event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * The facet name. + * A time interval in milliseconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly facet?: string; + readonly interval?: number; /** - * Define the time interval in seconds. + * The measurable attribute to compute. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly interval?: number; + readonly metric?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), interval: cdktf.numberToTerraform(struct!.interval), + metric: cdktf.stringToTerraform(struct!.metric), } } -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } if (this._interval !== undefined) { hasAnyValues = true; internalValueResult.interval = this._interval; } + if (this._metric !== undefined) { + hasAnyValues = true; + internalValueResult.metric = this._metric; + } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; - this._facet = undefined; this._interval = undefined; + this._metric = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; - this._facet = value.facet; this._interval = value.interval; + this._metric = value.metric; } } @@ -17367,22 +16238,6 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery return this._aggregation; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - // interval - computed: false, optional: true, required: false private _interval?: number; public get interval() { @@ -17398,41 +16253,77 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery public get intervalInput() { return this._interval; } + + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); + } + public set metric(value: string) { + this._metric = value; + } + public resetMetric() { + this._metric = undefined; + } + // Temporarily expose input value. Use with caution. + public get metricInput() { + return this._metric; + } } -export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery { + +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable + /** - * The aggregation method. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort { + /** + * The aggregation methods for the event platform queries. Valid values are `count`, `cardinality`, `median`, `pc75`, `pc90`, `pc95`, `pc98`, `pc99`, `sum`, `min`, `max`, `avg`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ readonly aggregation: string; /** - * The facet name. + * The metric used for sorting group by results. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly facet?: string; + readonly metric?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Direction of sort. Valid values are `asc`, `desc`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly order: string; + readonly order?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), + metric: cdktf.stringToTerraform(struct!.metric), order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17443,16 +16334,16 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQ super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { hasAnyValues = true; internalValueResult.aggregation = this._aggregation; } - if (this._facet !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.metric = this._metric; } if (this._order !== undefined) { hasAnyValues = true; @@ -17461,17 +16352,17 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQ return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort | undefined) { if (value === undefined) { this.isEmptyObject = false; this._aggregation = undefined; - this._facet = undefined; + this._metric = undefined; this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._aggregation = value.aggregation; - this._facet = value.facet; + this._metric = value.metric; this._order = value.order; } } @@ -17489,23 +16380,23 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQ return this._aggregation; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // metric - computed: false, optional: true, required: false + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public set facet(value: string) { - this._facet = value; + public set metric(value: string) { + this._metric = value; } - public resetFacet() { - this._facet = undefined; + public resetMetric() { + this._metric = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get metricInput() { + return this._metric; } - // order - computed: false, optional: false, required: true + // order - computed: false, optional: true, required: false private _order?: string; public get order() { return this.getStringAttribute('order'); @@ -17513,33 +16404,36 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQ public set order(value: string) { this._order = value; } + public resetOrder() { + this._order = undefined; + } // Temporarily expose input value. Use with caution. public get orderInput() { return this._order; } } -export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy { +export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy { /** - * The facet name. + * The event facet. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly facet?: string; + readonly facet: string; /** - * The maximum number of items in the group. + * The number of groups to return. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ readonly limit?: number; /** - * sort_query block + * sort block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery; + readonly sort?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort; } -export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -17547,11 +16441,11 @@ export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByTo return { facet: cdktf.stringToTerraform(struct!.facet), limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + sort: dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortToTerraform(struct!.sort), } } -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; private resolvableValue?: cdktf.IResolvable; @@ -17565,7 +16459,7 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutpu super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } @@ -17579,20 +16473,20 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutpu hasAnyValues = true; internalValueResult.limit = this._limit; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._sort?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.sort = this._sort?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._facet = undefined; this._limit = undefined; - this._sortQuery.internalValue = undefined; + this._sort.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -17603,11 +16497,11 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutpu this.resolvableValue = undefined; this._facet = value.facet; this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._sort.internalValue = value.sort; } } - // facet - computed: false, optional: true, required: false + // facet - computed: false, optional: false, required: true private _facet?: string; public get facet() { return this.getStringAttribute('facet'); @@ -17615,9 +16509,6 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutpu public set facet(value: string) { this._facet = value; } - public resetFacet() { - this._facet = undefined; - } // Temporarily expose input value. Use with caution. public get facetInput() { return this._facet; @@ -17639,25 +16530,25 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutpu return this._limit; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // sort - computed: false, optional: true, required: false + private _sort = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySortOutputReference(this, "sort"); + public get sort() { + return this._sort; } - public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public putSort(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBySort) { + this._sort.internalValue = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetSort() { + this._sort.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get sortInput() { + return this._sort.internalValue; } } -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -17671,212 +16562,136 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute { - /** - * The aggregation method. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} - */ - readonly aggregation: string; - /** - * The facet name. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} - */ - readonly facet?: string; +export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch { /** - * Define the time interval in seconds. + * The events search string. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} */ - readonly interval?: number; + readonly query: string; } -export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._interval !== undefined) { + if (this._query !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._query = value.query; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); - } - public set aggregation(value: string) { - this._aggregation = value; - } - // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; - } - - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); - } - public set facet(value: string) { - this._facet = value; - } - public resetFacet() { - this._facet = undefined; - } - // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; - } - - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); - } - public set interval(value: number) { - this._interval = value; + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); } - public resetInterval() { - this._interval = undefined; + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get queryInput() { + return this._query; } } - -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable - +export interface DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * The data source for event platform-based queries. Valid values are `logs`, `spans`, `network`, `rum`, `security_signals`, `profiles`, `audit`, `events`, `ci_tests`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly dataSource: string; /** - * @param index the index of the item to return + * An array of index names to query in the stream. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#indexes Dashboard#indexes} */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQuery { + readonly indexes?: string[]; /** - * The name of the index to query. + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly index: string; + readonly name: string; /** - * The search query to use. + * Storage location (private beta). * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} */ - readonly searchQuery?: string; + readonly storage?: string; /** - * compute_query block + * compute block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} */ - readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery; + readonly compute: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable; /** * group_by block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} */ - readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable; /** - * multi_compute block + * search block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search Dashboard#search} */ - readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; + readonly search?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch; } -export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestSecurityQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - index: cdktf.stringToTerraform(struct!.index), - search_query: cdktf.stringToTerraform(struct!.searchQuery), - compute_query: dashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), - group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), - multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + data_source: cdktf.stringToTerraform(struct!.dataSource), + indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), + name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), + compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), + search: dashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), } } -export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -17887,102 +16702,140 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputRefere super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._index !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.index = this._index; + internalValueResult.dataSource = this._dataSource; } - if (this._searchQuery !== undefined) { + if (this._indexes !== undefined) { hasAnyValues = true; - internalValueResult.searchQuery = this._searchQuery; + internalValueResult.indexes = this._indexes; } - if (this._computeQuery?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.computeQuery = this._computeQuery?.internalValue; + internalValueResult.name = this._name; + } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } + if (this._compute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.compute = this._compute?.internalValue; } if (this._groupBy?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.groupBy = this._groupBy?.internalValue; } - if (this._multiCompute?.internalValue !== undefined) { + if (this._search?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.multiCompute = this._multiCompute?.internalValue; + internalValueResult.search = this._search?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._index = undefined; - this._searchQuery = undefined; - this._computeQuery.internalValue = undefined; + this._dataSource = undefined; + this._indexes = undefined; + this._name = undefined; + this._storage = undefined; + this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; - this._multiCompute.internalValue = undefined; + this._search.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._index = value.index; - this._searchQuery = value.searchQuery; - this._computeQuery.internalValue = value.computeQuery; + this._dataSource = value.dataSource; + this._indexes = value.indexes; + this._name = value.name; + this._storage = value.storage; + this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; - this._multiCompute.internalValue = value.multiCompute; + this._search.internalValue = value.search; } } - // index - computed: false, optional: false, required: true - private _index?: string; - public get index() { - return this.getStringAttribute('index'); + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set index(value: string) { - this._index = value; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get indexInput() { - return this._index; + public get dataSourceInput() { + return this._dataSource; } - // search_query - computed: false, optional: true, required: false - private _searchQuery?: string; - public get searchQuery() { - return this.getStringAttribute('search_query'); + // indexes - computed: false, optional: true, required: false + private _indexes?: string[]; + public get indexes() { + return this.getListAttribute('indexes'); } - public set searchQuery(value: string) { - this._searchQuery = value; + public set indexes(value: string[]) { + this._indexes = value; } - public resetSearchQuery() { - this._searchQuery = undefined; + public resetIndexes() { + this._indexes = undefined; } // Temporarily expose input value. Use with caution. - public get searchQueryInput() { - return this._searchQuery; + public get indexesInput() { + return this._indexes; } - // compute_query - computed: false, optional: true, required: false - private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); - public get computeQuery() { - return this._computeQuery; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery) { - this._computeQuery.internalValue = value; + public set name(value: string) { + this._name = value; } - public resetComputeQuery() { - this._computeQuery.internalValue = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; } // Temporarily expose input value. Use with caution. - public get computeQueryInput() { - return this._computeQuery.internalValue; + public get storageInput() { + return this._storage; + } + + // compute - computed: false, optional: false, required: true + private _compute = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryComputeList(this, "compute", false); + public get compute() { + return this._compute; + } + public putCompute(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryCompute[] | cdktf.IResolvable) { + this._compute.internalValue = value; + } + // Temporarily expose input value. Use with caution. + public get computeInput() { + return this._compute.internalValue; } // group_by - computed: false, optional: true, required: false - private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupByList(this, "group_by", false); public get groupBy() { return this._groupBy; } - public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryGroupBy[] | cdktf.IResolvable) { this._groupBy.internalValue = value; } public resetGroupBy() { @@ -17993,56 +16846,63 @@ export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputRefere return this._groupBy.internalValue; } - // multi_compute - computed: false, optional: true, required: false - private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); - public get multiCompute() { - return this._multiCompute; + // search - computed: false, optional: true, required: false + private _search = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearchOutputReference(this, "search"); + public get search() { + return this._search; } - public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { - this._multiCompute.internalValue = value; + public putSearch(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuerySearch) { + this._search.internalValue = value; } - public resetMultiCompute() { - this._multiCompute.internalValue = undefined; + public resetSearch() { + this._search.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get multiComputeInput() { - return this._multiCompute.internalValue; + public get searchInput() { + return this._search.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionRequestStyle { +export interface DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery { /** - * The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_type Dashboard#line_type} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly lineType?: string; + readonly aggregator?: string; /** - * The width of line displayed. Valid values are `normal`, `thick`, `thin`. + * The data source for metrics queries. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_width Dashboard#line_width} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly lineWidth?: string; + readonly dataSource?: string; /** - * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * The name of the query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly palette?: string; + readonly name: string; + /** + * The metrics query definition. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query: string; } -export function dashboardWidgetTimeseriesDefinitionRequestStyleToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference | DashboardWidgetTimeseriesDefinitionRequestStyle): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - line_type: cdktf.stringToTerraform(struct!.lineType), - line_width: cdktf.stringToTerraform(struct!.lineWidth), - palette: cdktf.stringToTerraform(struct!.palette), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + name: cdktf.stringToTerraform(struct!.name), + query: cdktf.stringToTerraform(struct!.query), } } -export class DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18053,794 +16913,642 @@ export class DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference exte super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestStyle | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._lineType !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.lineType = this._lineType; + internalValueResult.aggregator = this._aggregator; } - if (this._lineWidth !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.lineWidth = this._lineWidth; + internalValueResult.dataSource = this._dataSource; } - if (this._palette !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.palette = this._palette; + internalValueResult.name = this._name; + } + if (this._query !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestStyle | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._lineType = undefined; - this._lineWidth = undefined; - this._palette = undefined; + this._aggregator = undefined; + this._dataSource = undefined; + this._name = undefined; + this._query = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._lineType = value.lineType; - this._lineWidth = value.lineWidth; - this._palette = value.palette; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._name = value.name; + this._query = value.query; } } - // line_type - computed: false, optional: true, required: false - private _lineType?: string; - public get lineType() { - return this.getStringAttribute('line_type'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set lineType(value: string) { - this._lineType = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetLineType() { - this._lineType = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get lineTypeInput() { - return this._lineType; + public get aggregatorInput() { + return this._aggregator; } - // line_width - computed: false, optional: true, required: false - private _lineWidth?: string; - public get lineWidth() { - return this.getStringAttribute('line_width'); + // data_source - computed: false, optional: true, required: false + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public set lineWidth(value: string) { - this._lineWidth = value; + public set dataSource(value: string) { + this._dataSource = value; } - public resetLineWidth() { - this._lineWidth = undefined; + public resetDataSource() { + this._dataSource = undefined; } // Temporarily expose input value. Use with caution. - public get lineWidthInput() { - return this._lineWidth; + public get dataSourceInput() { + return this._dataSource; } - // palette - computed: false, optional: true, required: false - private _palette?: string; - public get palette() { - return this.getStringAttribute('palette'); + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public set palette(value: string) { - this._palette = value; + public set name(value: string) { + this._name = value; } - public resetPalette() { - this._palette = undefined; + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // query - computed: false, optional: false, required: true + private _query?: string; + public get query() { + return this.getStringAttribute('query'); + } + public set query(value: string) { + this._query = value; } // Temporarily expose input value. Use with caution. - public get paletteInput() { - return this._palette; + public get queryInput() { + return this._query; } } -export interface DashboardWidgetTimeseriesDefinitionRequest { - /** - * How to display the marker lines. Valid values are `area`, `bars`, `line`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} - */ - readonly displayType?: string; - /** - * A Boolean indicating whether the request uses the right or left Y-Axis. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#on_right_yaxis Dashboard#on_right_yaxis} - */ - readonly onRightYaxis?: boolean | cdktf.IResolvable; - /** - * The metric query to use for this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} - */ - readonly q?: string; - /** - * apm_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} - */ - readonly apmQuery?: DashboardWidgetTimeseriesDefinitionRequestApmQuery; - /** - * audit_query block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} - */ - readonly auditQuery?: DashboardWidgetTimeseriesDefinitionRequestAuditQuery; +export interface DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery { /** - * formula block + * The aggregation methods available for metrics queries. Valid values are `avg`, `min`, `max`, `sum`, `last`, `area`, `l2norm`, `percentile`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregator Dashboard#aggregator} */ - readonly formula?: DashboardWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable; + readonly aggregator?: string; /** - * log_query block + * The data source for process queries. Valid values are `process`, `container`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#data_source Dashboard#data_source} */ - readonly logQuery?: DashboardWidgetTimeseriesDefinitionRequestLogQuery; + readonly dataSource: string; /** - * metadata block + * Whether to normalize the CPU percentages. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metadata Dashboard#metadata} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_normalized_cpu Dashboard#is_normalized_cpu} */ - readonly metadata?: DashboardWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable; + readonly isNormalizedCpu?: boolean | cdktf.IResolvable; /** - * network_query block + * The number of hits to return. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} */ - readonly networkQuery?: DashboardWidgetTimeseriesDefinitionRequestNetworkQuery; + readonly limit?: number; /** - * process_query block + * The process metric name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric Dashboard#metric} */ - readonly processQuery?: DashboardWidgetTimeseriesDefinitionRequestProcessQuery; + readonly metric: string; /** - * query block + * The name of query for use in formulas. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#name Dashboard#name} */ - readonly query?: DashboardWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable; + readonly name: string; /** - * rum_query block + * The direction of the sort. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort Dashboard#sort} */ - readonly rumQuery?: DashboardWidgetTimeseriesDefinitionRequestRumQuery; + readonly sort?: string; /** - * security_query block + * An array of tags to filter by. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#tag_filters Dashboard#tag_filters} */ - readonly securityQuery?: DashboardWidgetTimeseriesDefinitionRequestSecurityQuery; + readonly tagFilters?: string[]; /** - * style block + * The text to use as a filter. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#text_filter Dashboard#text_filter} */ - readonly style?: DashboardWidgetTimeseriesDefinitionRequestStyle; + readonly textFilter?: string; } -export function dashboardWidgetTimeseriesDefinitionRequestToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequest | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - display_type: cdktf.stringToTerraform(struct!.displayType), - on_right_yaxis: cdktf.booleanToTerraform(struct!.onRightYaxis), - q: cdktf.stringToTerraform(struct!.q), - apm_query: dashboardWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct!.apmQuery), - audit_query: dashboardWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), - formula: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestFormulaToTerraform, true)(struct!.formula), - log_query: dashboardWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct!.logQuery), - metadata: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestMetadataToTerraform, true)(struct!.metadata), - network_query: dashboardWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), - process_query: dashboardWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct!.processQuery), - query: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestQueryToTerraform, true)(struct!.query), - rum_query: dashboardWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct!.rumQuery), - security_query: dashboardWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), - style: dashboardWidgetTimeseriesDefinitionRequestStyleToTerraform(struct!.style), + aggregator: cdktf.stringToTerraform(struct!.aggregator), + data_source: cdktf.stringToTerraform(struct!.dataSource), + is_normalized_cpu: cdktf.booleanToTerraform(struct!.isNormalizedCpu), + limit: cdktf.numberToTerraform(struct!.limit), + metric: cdktf.stringToTerraform(struct!.metric), + name: cdktf.stringToTerraform(struct!.name), + sort: cdktf.stringToTerraform(struct!.sort), + tag_filters: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.tagFilters), + text_filter: cdktf.stringToTerraform(struct!.textFilter), } } -export class DashboardWidgetTimeseriesDefinitionRequestOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._displayType !== undefined) { - hasAnyValues = true; - internalValueResult.displayType = this._displayType; - } - if (this._onRightYaxis !== undefined) { - hasAnyValues = true; - internalValueResult.onRightYaxis = this._onRightYaxis; - } - if (this._q !== undefined) { - hasAnyValues = true; - internalValueResult.q = this._q; - } - if (this._apmQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.apmQuery = this._apmQuery?.internalValue; - } - if (this._auditQuery?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.auditQuery = this._auditQuery?.internalValue; - } - if (this._formula?.internalValue !== undefined) { + if (this._aggregator !== undefined) { hasAnyValues = true; - internalValueResult.formula = this._formula?.internalValue; + internalValueResult.aggregator = this._aggregator; } - if (this._logQuery?.internalValue !== undefined) { + if (this._dataSource !== undefined) { hasAnyValues = true; - internalValueResult.logQuery = this._logQuery?.internalValue; + internalValueResult.dataSource = this._dataSource; } - if (this._metadata?.internalValue !== undefined) { + if (this._isNormalizedCpu !== undefined) { hasAnyValues = true; - internalValueResult.metadata = this._metadata?.internalValue; + internalValueResult.isNormalizedCpu = this._isNormalizedCpu; } - if (this._networkQuery?.internalValue !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.networkQuery = this._networkQuery?.internalValue; + internalValueResult.limit = this._limit; } - if (this._processQuery?.internalValue !== undefined) { + if (this._metric !== undefined) { hasAnyValues = true; - internalValueResult.processQuery = this._processQuery?.internalValue; + internalValueResult.metric = this._metric; } - if (this._query?.internalValue !== undefined) { + if (this._name !== undefined) { hasAnyValues = true; - internalValueResult.query = this._query?.internalValue; + internalValueResult.name = this._name; } - if (this._rumQuery?.internalValue !== undefined) { + if (this._sort !== undefined) { hasAnyValues = true; - internalValueResult.rumQuery = this._rumQuery?.internalValue; + internalValueResult.sort = this._sort; } - if (this._securityQuery?.internalValue !== undefined) { + if (this._tagFilters !== undefined) { hasAnyValues = true; - internalValueResult.securityQuery = this._securityQuery?.internalValue; + internalValueResult.tagFilters = this._tagFilters; } - if (this._style?.internalValue !== undefined) { + if (this._textFilter !== undefined) { hasAnyValues = true; - internalValueResult.style = this._style?.internalValue; + internalValueResult.textFilter = this._textFilter; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._displayType = undefined; - this._onRightYaxis = undefined; - this._q = undefined; - this._apmQuery.internalValue = undefined; - this._auditQuery.internalValue = undefined; - this._formula.internalValue = undefined; - this._logQuery.internalValue = undefined; - this._metadata.internalValue = undefined; - this._networkQuery.internalValue = undefined; - this._processQuery.internalValue = undefined; - this._query.internalValue = undefined; - this._rumQuery.internalValue = undefined; - this._securityQuery.internalValue = undefined; - this._style.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._aggregator = undefined; + this._dataSource = undefined; + this._isNormalizedCpu = undefined; + this._limit = undefined; + this._metric = undefined; + this._name = undefined; + this._sort = undefined; + this._tagFilters = undefined; + this._textFilter = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._displayType = value.displayType; - this._onRightYaxis = value.onRightYaxis; - this._q = value.q; - this._apmQuery.internalValue = value.apmQuery; - this._auditQuery.internalValue = value.auditQuery; - this._formula.internalValue = value.formula; - this._logQuery.internalValue = value.logQuery; - this._metadata.internalValue = value.metadata; - this._networkQuery.internalValue = value.networkQuery; - this._processQuery.internalValue = value.processQuery; - this._query.internalValue = value.query; - this._rumQuery.internalValue = value.rumQuery; - this._securityQuery.internalValue = value.securityQuery; - this._style.internalValue = value.style; + this._aggregator = value.aggregator; + this._dataSource = value.dataSource; + this._isNormalizedCpu = value.isNormalizedCpu; + this._limit = value.limit; + this._metric = value.metric; + this._name = value.name; + this._sort = value.sort; + this._tagFilters = value.tagFilters; + this._textFilter = value.textFilter; } } - // display_type - computed: false, optional: true, required: false - private _displayType?: string; - public get displayType() { - return this.getStringAttribute('display_type'); + // aggregator - computed: false, optional: true, required: false + private _aggregator?: string; + public get aggregator() { + return this.getStringAttribute('aggregator'); } - public set displayType(value: string) { - this._displayType = value; + public set aggregator(value: string) { + this._aggregator = value; } - public resetDisplayType() { - this._displayType = undefined; + public resetAggregator() { + this._aggregator = undefined; } // Temporarily expose input value. Use with caution. - public get displayTypeInput() { - return this._displayType; + public get aggregatorInput() { + return this._aggregator; } - // on_right_yaxis - computed: false, optional: true, required: false - private _onRightYaxis?: boolean | cdktf.IResolvable; - public get onRightYaxis() { - return this.getBooleanAttribute('on_right_yaxis'); - } - public set onRightYaxis(value: boolean | cdktf.IResolvable) { - this._onRightYaxis = value; + // data_source - computed: false, optional: false, required: true + private _dataSource?: string; + public get dataSource() { + return this.getStringAttribute('data_source'); } - public resetOnRightYaxis() { - this._onRightYaxis = undefined; + public set dataSource(value: string) { + this._dataSource = value; } // Temporarily expose input value. Use with caution. - public get onRightYaxisInput() { - return this._onRightYaxis; + public get dataSourceInput() { + return this._dataSource; } - // q - computed: false, optional: true, required: false - private _q?: string; - public get q() { - return this.getStringAttribute('q'); + // is_normalized_cpu - computed: false, optional: true, required: false + private _isNormalizedCpu?: boolean | cdktf.IResolvable; + public get isNormalizedCpu() { + return this.getBooleanAttribute('is_normalized_cpu'); } - public set q(value: string) { - this._q = value; + public set isNormalizedCpu(value: boolean | cdktf.IResolvable) { + this._isNormalizedCpu = value; } - public resetQ() { - this._q = undefined; + public resetIsNormalizedCpu() { + this._isNormalizedCpu = undefined; } // Temporarily expose input value. Use with caution. - public get qInput() { - return this._q; + public get isNormalizedCpuInput() { + return this._isNormalizedCpu; } - // apm_query - computed: false, optional: true, required: false - private _apmQuery = new DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference(this, "apm_query"); - public get apmQuery() { - return this._apmQuery; + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public putApmQuery(value: DashboardWidgetTimeseriesDefinitionRequestApmQuery) { - this._apmQuery.internalValue = value; + public set limit(value: number) { + this._limit = value; } - public resetApmQuery() { - this._apmQuery.internalValue = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get apmQueryInput() { - return this._apmQuery.internalValue; + public get limitInput() { + return this._limit; } - // audit_query - computed: false, optional: true, required: false - private _auditQuery = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference(this, "audit_query"); - public get auditQuery() { - return this._auditQuery; - } - public putAuditQuery(value: DashboardWidgetTimeseriesDefinitionRequestAuditQuery) { - this._auditQuery.internalValue = value; + // metric - computed: false, optional: false, required: true + private _metric?: string; + public get metric() { + return this.getStringAttribute('metric'); } - public resetAuditQuery() { - this._auditQuery.internalValue = undefined; + public set metric(value: string) { + this._metric = value; } // Temporarily expose input value. Use with caution. - public get auditQueryInput() { - return this._auditQuery.internalValue; + public get metricInput() { + return this._metric; } - // formula - computed: false, optional: true, required: false - private _formula = new DashboardWidgetTimeseriesDefinitionRequestFormulaList(this, "formula", false); - public get formula() { - return this._formula; - } - public putFormula(value: DashboardWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable) { - this._formula.internalValue = value; + // name - computed: false, optional: false, required: true + private _name?: string; + public get name() { + return this.getStringAttribute('name'); } - public resetFormula() { - this._formula.internalValue = undefined; + public set name(value: string) { + this._name = value; } // Temporarily expose input value. Use with caution. - public get formulaInput() { - return this._formula.internalValue; + public get nameInput() { + return this._name; } - // log_query - computed: false, optional: true, required: false - private _logQuery = new DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference(this, "log_query"); - public get logQuery() { - return this._logQuery; + // sort - computed: false, optional: true, required: false + private _sort?: string; + public get sort() { + return this.getStringAttribute('sort'); } - public putLogQuery(value: DashboardWidgetTimeseriesDefinitionRequestLogQuery) { - this._logQuery.internalValue = value; + public set sort(value: string) { + this._sort = value; } - public resetLogQuery() { - this._logQuery.internalValue = undefined; + public resetSort() { + this._sort = undefined; } // Temporarily expose input value. Use with caution. - public get logQueryInput() { - return this._logQuery.internalValue; + public get sortInput() { + return this._sort; } - // metadata - computed: false, optional: true, required: false - private _metadata = new DashboardWidgetTimeseriesDefinitionRequestMetadataList(this, "metadata", false); - public get metadata() { - return this._metadata; - } - public putMetadata(value: DashboardWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable) { - this._metadata.internalValue = value; - } - public resetMetadata() { - this._metadata.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get metadataInput() { - return this._metadata.internalValue; - } - - // network_query - computed: false, optional: true, required: false - private _networkQuery = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference(this, "network_query"); - public get networkQuery() { - return this._networkQuery; - } - public putNetworkQuery(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQuery) { - this._networkQuery.internalValue = value; - } - public resetNetworkQuery() { - this._networkQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get networkQueryInput() { - return this._networkQuery.internalValue; - } - - // process_query - computed: false, optional: true, required: false - private _processQuery = new DashboardWidgetTimeseriesDefinitionRequestProcessQueryOutputReference(this, "process_query"); - public get processQuery() { - return this._processQuery; - } - public putProcessQuery(value: DashboardWidgetTimeseriesDefinitionRequestProcessQuery) { - this._processQuery.internalValue = value; - } - public resetProcessQuery() { - this._processQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get processQueryInput() { - return this._processQuery.internalValue; - } - - // query - computed: false, optional: true, required: false - private _query = new DashboardWidgetTimeseriesDefinitionRequestQueryList(this, "query", false); - public get query() { - return this._query; - } - public putQuery(value: DashboardWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable) { - this._query.internalValue = value; - } - public resetQuery() { - this._query.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get queryInput() { - return this._query.internalValue; - } - - // rum_query - computed: false, optional: true, required: false - private _rumQuery = new DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference(this, "rum_query"); - public get rumQuery() { - return this._rumQuery; - } - public putRumQuery(value: DashboardWidgetTimeseriesDefinitionRequestRumQuery) { - this._rumQuery.internalValue = value; - } - public resetRumQuery() { - this._rumQuery.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get rumQueryInput() { - return this._rumQuery.internalValue; - } - - // security_query - computed: false, optional: true, required: false - private _securityQuery = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference(this, "security_query"); - public get securityQuery() { - return this._securityQuery; + // tag_filters - computed: false, optional: true, required: false + private _tagFilters?: string[]; + public get tagFilters() { + return this.getListAttribute('tag_filters'); } - public putSecurityQuery(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQuery) { - this._securityQuery.internalValue = value; + public set tagFilters(value: string[]) { + this._tagFilters = value; } - public resetSecurityQuery() { - this._securityQuery.internalValue = undefined; + public resetTagFilters() { + this._tagFilters = undefined; } // Temporarily expose input value. Use with caution. - public get securityQueryInput() { - return this._securityQuery.internalValue; + public get tagFiltersInput() { + return this._tagFilters; } - // style - computed: false, optional: true, required: false - private _style = new DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference(this, "style"); - public get style() { - return this._style; + // text_filter - computed: false, optional: true, required: false + private _textFilter?: string; + public get textFilter() { + return this.getStringAttribute('text_filter'); } - public putStyle(value: DashboardWidgetTimeseriesDefinitionRequestStyle) { - this._style.internalValue = value; + public set textFilter(value: string) { + this._textFilter = value; } - public resetStyle() { - this._style.internalValue = undefined; + public resetTextFilter() { + this._textFilter = undefined; } // Temporarily expose input value. Use with caution. - public get styleInput() { - return this._style.internalValue; - } -} - -export class DashboardWidgetTimeseriesDefinitionRequestList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetTimeseriesDefinitionRequestOutputReference { - return new DashboardWidgetTimeseriesDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get textFilterInput() { + return this._textFilter; } } -export interface DashboardWidgetTimeseriesDefinitionRightYaxis { +export interface DashboardWidgetTimeseriesDefinitionRequestQuery { /** - * Always include zero or fit the axis to the data range. + * apm_dependency_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_dependency_stats_query Dashboard#apm_dependency_stats_query} */ - readonly includeZero?: boolean | cdktf.IResolvable; + readonly apmDependencyStatsQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery; /** - * The label of the axis to display on the graph. + * apm_resource_stats_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_resource_stats_query Dashboard#apm_resource_stats_query} */ - readonly label?: string; + readonly apmResourceStatsQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery; /** - * Specify the maximum value to show on the Y-axis. + * event_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event_query Dashboard#event_query} */ - readonly max?: string; + readonly eventQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery; /** - * Specify the minimum value to show on the Y-axis. + * metric_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metric_query Dashboard#metric_query} */ - readonly min?: string; + readonly metricQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * process_query block * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} */ - readonly scale?: string; + readonly processQuery?: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery; } -export function dashboardWidgetTimeseriesDefinitionRightYaxisToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference | DashboardWidgetTimeseriesDefinitionRightYaxis): any { +export function dashboardWidgetTimeseriesDefinitionRequestQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + apm_dependency_stats_query: dashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryToTerraform(struct!.apmDependencyStatsQuery), + apm_resource_stats_query: dashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryToTerraform(struct!.apmResourceStatsQuery), + event_query: dashboardWidgetTimeseriesDefinitionRequestQueryEventQueryToTerraform(struct!.eventQuery), + metric_query: dashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryToTerraform(struct!.metricQuery), + process_query: dashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryToTerraform(struct!.processQuery), } } -export class DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionRightYaxis | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { + if (this._apmDependencyStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; + internalValueResult.apmDependencyStatsQuery = this._apmDependencyStatsQuery?.internalValue; } - if (this._label !== undefined) { + if (this._apmResourceStatsQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.apmResourceStatsQuery = this._apmResourceStatsQuery?.internalValue; } - if (this._max !== undefined) { + if (this._eventQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.eventQuery = this._eventQuery?.internalValue; } - if (this._min !== undefined) { + if (this._metricQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.metricQuery = this._metricQuery?.internalValue; } - if (this._scale !== undefined) { + if (this._processQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.processQuery = this._processQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionRightYaxis | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestQuery | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = undefined; + this._apmResourceStatsQuery.internalValue = undefined; + this._eventQuery.internalValue = undefined; + this._metricQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this.resolvableValue = undefined; + this._apmDependencyStatsQuery.internalValue = value.apmDependencyStatsQuery; + this._apmResourceStatsQuery.internalValue = value.apmResourceStatsQuery; + this._eventQuery.internalValue = value.eventQuery; + this._metricQuery.internalValue = value.metricQuery; + this._processQuery.internalValue = value.processQuery; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); + // apm_dependency_stats_query - computed: false, optional: true, required: false + private _apmDependencyStatsQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQueryOutputReference(this, "apm_dependency_stats_query"); + public get apmDependencyStatsQuery() { + return this._apmDependencyStatsQuery; } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; + public putApmDependencyStatsQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmDependencyStatsQuery) { + this._apmDependencyStatsQuery.internalValue = value; } - public resetIncludeZero() { - this._includeZero = undefined; + public resetApmDependencyStatsQuery() { + this._apmDependencyStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; + public get apmDependencyStatsQueryInput() { + return this._apmDependencyStatsQuery.internalValue; } - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // apm_resource_stats_query - computed: false, optional: true, required: false + private _apmResourceStatsQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQueryOutputReference(this, "apm_resource_stats_query"); + public get apmResourceStatsQuery() { + return this._apmResourceStatsQuery; } - public set label(value: string) { - this._label = value; + public putApmResourceStatsQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryApmResourceStatsQuery) { + this._apmResourceStatsQuery.internalValue = value; } - public resetLabel() { - this._label = undefined; + public resetApmResourceStatsQuery() { + this._apmResourceStatsQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get apmResourceStatsQueryInput() { + return this._apmResourceStatsQuery.internalValue; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + // event_query - computed: false, optional: true, required: false + private _eventQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryEventQueryOutputReference(this, "event_query"); + public get eventQuery() { + return this._eventQuery; } - public set max(value: string) { - this._max = value; + public putEventQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryEventQuery) { + this._eventQuery.internalValue = value; } - public resetMax() { - this._max = undefined; + public resetEventQuery() { + this._eventQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; + public get eventQueryInput() { + return this._eventQuery.internalValue; } - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); + // metric_query - computed: false, optional: true, required: false + private _metricQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryMetricQueryOutputReference(this, "metric_query"); + public get metricQuery() { + return this._metricQuery; } - public set min(value: string) { - this._min = value; + public putMetricQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryMetricQuery) { + this._metricQuery.internalValue = value; } - public resetMin() { - this._min = undefined; + public resetMetricQuery() { + this._metricQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; + public get metricQueryInput() { + return this._metricQuery.internalValue; } - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetTimeseriesDefinitionRequestQueryProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; } - public set scale(value: string) { - this._scale = value; + public putProcessQuery(value: DashboardWidgetTimeseriesDefinitionRequestQueryProcessQuery) { + this._processQuery.internalValue = value; } - public resetScale() { - this._scale = undefined; + public resetProcessQuery() { + this._processQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; + public get processQueryInput() { + return this._processQuery.internalValue; } } -export interface DashboardWidgetTimeseriesDefinitionYaxis { + +export class DashboardWidgetTimeseriesDefinitionRequestQueryList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable + /** - * Always include zero or fit the axis to the data range. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - readonly includeZero?: boolean | cdktf.IResolvable; + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + /** - * The label of the axis to display on the graph. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + * @param index the index of the item to return */ - readonly label?: string; + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestQueryOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery { /** - * Specify the maximum value to show on the Y-axis. + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly max?: string; + readonly aggregation: string; /** - * Specify the minimum value to show on the Y-axis. + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly min?: string; + readonly facet?: string; /** - * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly scale?: string; + readonly interval?: number; } -export function dashboardWidgetTimeseriesDefinitionYaxisToTerraform(struct?: DashboardWidgetTimeseriesDefinitionYaxisOutputReference | DashboardWidgetTimeseriesDefinitionYaxis): any { +export function dashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - include_zero: cdktf.booleanToTerraform(struct!.includeZero), - label: cdktf.stringToTerraform(struct!.label), - max: cdktf.stringToTerraform(struct!.max), - min: cdktf.stringToTerraform(struct!.min), - scale: cdktf.stringToTerraform(struct!.scale), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), } } -export class DashboardWidgetTimeseriesDefinitionYaxisOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -18851,242 +17559,118 @@ export class DashboardWidgetTimeseriesDefinitionYaxisOutputReference extends cdk super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinitionYaxis | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._includeZero !== undefined) { - hasAnyValues = true; - internalValueResult.includeZero = this._includeZero; - } - if (this._label !== undefined) { - hasAnyValues = true; - internalValueResult.label = this._label; - } - if (this._max !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.max = this._max; + internalValueResult.aggregation = this._aggregation; } - if (this._min !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.min = this._min; + internalValueResult.facet = this._facet; } - if (this._scale !== undefined) { + if (this._interval !== undefined) { hasAnyValues = true; - internalValueResult.scale = this._scale; + internalValueResult.interval = this._interval; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinitionYaxis | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._includeZero = undefined; - this._label = undefined; - this._max = undefined; - this._min = undefined; - this._scale = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._includeZero = value.includeZero; - this._label = value.label; - this._max = value.max; - this._min = value.min; - this._scale = value.scale; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; } } - // include_zero - computed: false, optional: true, required: false - private _includeZero?: boolean | cdktf.IResolvable; - public get includeZero() { - return this.getBooleanAttribute('include_zero'); - } - public set includeZero(value: boolean | cdktf.IResolvable) { - this._includeZero = value; - } - public resetIncludeZero() { - this._includeZero = undefined; - } - // Temporarily expose input value. Use with caution. - public get includeZeroInput() { - return this._includeZero; - } - - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); - } - public set label(value: string) { - this._label = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLabel() { - this._label = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get aggregationInput() { + return this._aggregation; } - // max - computed: false, optional: true, required: false - private _max?: string; - public get max() { - return this.getStringAttribute('max'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set max(value: string) { - this._max = value; + public set facet(value: string) { + this._facet = value; } - public resetMax() { - this._max = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get maxInput() { - return this._max; + public get facetInput() { + return this._facet; } - // min - computed: false, optional: true, required: false - private _min?: string; - public get min() { - return this.getStringAttribute('min'); + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); } - public set min(value: string) { - this._min = value; + public set interval(value: number) { + this._interval = value; } - public resetMin() { - this._min = undefined; + public resetInterval() { + this._interval = undefined; } // Temporarily expose input value. Use with caution. - public get minInput() { - return this._min; - } - - // scale - computed: false, optional: true, required: false - private _scale?: string; - public get scale() { - return this.getStringAttribute('scale'); - } - public set scale(value: string) { - this._scale = value; - } - public resetScale() { - this._scale = undefined; - } - // Temporarily expose input value. Use with caution. - public get scaleInput() { - return this._scale; + public get intervalInput() { + return this._interval; } } -export interface DashboardWidgetTimeseriesDefinition { - /** - * A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_columns Dashboard#legend_columns} - */ - readonly legendColumns?: string[]; - /** - * The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_layout Dashboard#legend_layout} - */ - readonly legendLayout?: string; - /** - * The size of the legend displayed in the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_size Dashboard#legend_size} - */ - readonly legendSize?: string; - /** - * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} - */ - readonly liveSpan?: string; - /** - * Whether or not to show the legend on this widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_legend Dashboard#show_legend} - */ - readonly showLegend?: boolean | cdktf.IResolvable; - /** - * The title of the widget. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} - */ - readonly title?: string; - /** - * The alignment of the widget's title. Valid values are `center`, `left`, `right`. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} - */ - readonly titleAlign?: string; - /** - * The size of the widget's title (defaults to 16). - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} - */ - readonly titleSize?: string; - /** - * custom_link block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} - */ - readonly customLink?: DashboardWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable; - /** - * event block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event Dashboard#event} - */ - readonly event?: DashboardWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable; - /** - * marker block - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#marker Dashboard#marker} - */ - readonly marker?: DashboardWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable; +export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery { /** - * request block + * The aggregation method. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} */ - readonly request?: DashboardWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable; + readonly aggregation: string; /** - * right_yaxis block + * The facet name. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#right_yaxis Dashboard#right_yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} */ - readonly rightYaxis?: DashboardWidgetTimeseriesDefinitionRightYaxis; + readonly facet?: string; /** - * yaxis block + * Widget sorting methods. Valid values are `asc`, `desc`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} */ - readonly yaxis?: DashboardWidgetTimeseriesDefinitionYaxis; + readonly order: string; } -export function dashboardWidgetTimeseriesDefinitionToTerraform(struct?: DashboardWidgetTimeseriesDefinitionOutputReference | DashboardWidgetTimeseriesDefinition): any { +export function dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - legend_columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.legendColumns), - legend_layout: cdktf.stringToTerraform(struct!.legendLayout), - legend_size: cdktf.stringToTerraform(struct!.legendSize), - live_span: cdktf.stringToTerraform(struct!.liveSpan), - show_legend: cdktf.booleanToTerraform(struct!.showLegend), - title: cdktf.stringToTerraform(struct!.title), - title_align: cdktf.stringToTerraform(struct!.titleAlign), - title_size: cdktf.stringToTerraform(struct!.titleSize), - custom_link: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionCustomLinkToTerraform, true)(struct!.customLink), - event: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionEventToTerraform, true)(struct!.event), - marker: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionMarkerToTerraform, true)(struct!.marker), - request: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestToTerraform, true)(struct!.request), - right_yaxis: dashboardWidgetTimeseriesDefinitionRightYaxisToTerraform(struct!.rightYaxis), - yaxis: dashboardWidgetTimeseriesDefinitionYaxisToTerraform(struct!.yaxis), + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), } } -export class DashboardWidgetTimeseriesDefinitionOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; /** @@ -19097,416 +17681,156 @@ export class DashboardWidgetTimeseriesDefinitionOutputReference extends cdktf.Co super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetTimeseriesDefinition | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._legendColumns !== undefined) { - hasAnyValues = true; - internalValueResult.legendColumns = this._legendColumns; - } - if (this._legendLayout !== undefined) { - hasAnyValues = true; - internalValueResult.legendLayout = this._legendLayout; - } - if (this._legendSize !== undefined) { - hasAnyValues = true; - internalValueResult.legendSize = this._legendSize; - } - if (this._liveSpan !== undefined) { - hasAnyValues = true; - internalValueResult.liveSpan = this._liveSpan; - } - if (this._showLegend !== undefined) { - hasAnyValues = true; - internalValueResult.showLegend = this._showLegend; - } - if (this._title !== undefined) { - hasAnyValues = true; - internalValueResult.title = this._title; - } - if (this._titleAlign !== undefined) { - hasAnyValues = true; - internalValueResult.titleAlign = this._titleAlign; - } - if (this._titleSize !== undefined) { - hasAnyValues = true; - internalValueResult.titleSize = this._titleSize; - } - if (this._customLink?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.customLink = this._customLink?.internalValue; - } - if (this._event?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.event = this._event?.internalValue; - } - if (this._marker?.internalValue !== undefined) { - hasAnyValues = true; - internalValueResult.marker = this._marker?.internalValue; - } - if (this._request?.internalValue !== undefined) { + if (this._aggregation !== undefined) { hasAnyValues = true; - internalValueResult.request = this._request?.internalValue; + internalValueResult.aggregation = this._aggregation; } - if (this._rightYaxis?.internalValue !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.rightYaxis = this._rightYaxis?.internalValue; + internalValueResult.facet = this._facet; } - if (this._yaxis?.internalValue !== undefined) { + if (this._order !== undefined) { hasAnyValues = true; - internalValueResult.yaxis = this._yaxis?.internalValue; + internalValueResult.order = this._order; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetTimeseriesDefinition | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery | undefined) { if (value === undefined) { this.isEmptyObject = false; - this._legendColumns = undefined; - this._legendLayout = undefined; - this._legendSize = undefined; - this._liveSpan = undefined; - this._showLegend = undefined; - this._title = undefined; - this._titleAlign = undefined; - this._titleSize = undefined; - this._customLink.internalValue = undefined; - this._event.internalValue = undefined; - this._marker.internalValue = undefined; - this._request.internalValue = undefined; - this._rightYaxis.internalValue = undefined; - this._yaxis.internalValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this._legendColumns = value.legendColumns; - this._legendLayout = value.legendLayout; - this._legendSize = value.legendSize; - this._liveSpan = value.liveSpan; - this._showLegend = value.showLegend; - this._title = value.title; - this._titleAlign = value.titleAlign; - this._titleSize = value.titleSize; - this._customLink.internalValue = value.customLink; - this._event.internalValue = value.event; - this._marker.internalValue = value.marker; - this._request.internalValue = value.request; - this._rightYaxis.internalValue = value.rightYaxis; - this._yaxis.internalValue = value.yaxis; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; } } - // legend_columns - computed: false, optional: true, required: false - private _legendColumns?: string[]; - public get legendColumns() { - return cdktf.Fn.tolist(this.getListAttribute('legend_columns')); - } - public set legendColumns(value: string[]) { - this._legendColumns = value; + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); } - public resetLegendColumns() { - this._legendColumns = undefined; + public set aggregation(value: string) { + this._aggregation = value; } // Temporarily expose input value. Use with caution. - public get legendColumnsInput() { - return this._legendColumns; + public get aggregationInput() { + return this._aggregation; } - // legend_layout - computed: false, optional: true, required: false - private _legendLayout?: string; - public get legendLayout() { - return this.getStringAttribute('legend_layout'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set legendLayout(value: string) { - this._legendLayout = value; + public set facet(value: string) { + this._facet = value; } - public resetLegendLayout() { - this._legendLayout = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get legendLayoutInput() { - return this._legendLayout; + public get facetInput() { + return this._facet; } - // legend_size - computed: false, optional: true, required: false - private _legendSize?: string; - public get legendSize() { - return this.getStringAttribute('legend_size'); - } - public set legendSize(value: string) { - this._legendSize = value; + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); } - public resetLegendSize() { - this._legendSize = undefined; + public set order(value: string) { + this._order = value; } // Temporarily expose input value. Use with caution. - public get legendSizeInput() { - return this._legendSize; + public get orderInput() { + return this._order; } +} +export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery; +} - // live_span - computed: false, optional: true, required: false - private _liveSpan?: string; - public get liveSpan() { - return this.getStringAttribute('live_span'); - } - public set liveSpan(value: string) { - this._liveSpan = value; - } - public resetLiveSpan() { - this._liveSpan = undefined; +export function dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - // Temporarily expose input value. Use with caution. - public get liveSpanInput() { - return this._liveSpan; + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryToTerraform(struct!.sortQuery), } +} - // show_legend - computed: false, optional: true, required: false - private _showLegend?: boolean | cdktf.IResolvable; - public get showLegend() { - return this.getBooleanAttribute('show_legend'); - } - public set showLegend(value: boolean | cdktf.IResolvable) { - this._showLegend = value; - } - public resetShowLegend() { - this._showLegend = undefined; - } - // Temporarily expose input value. Use with caution. - public get showLegendInput() { - return this._showLegend; - } +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; - // title - computed: false, optional: true, required: false - private _title?: string; - public get title() { - return this.getStringAttribute('title'); - } - public set title(value: string) { - this._title = value; - } - public resetTitle() { - this._title = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleInput() { - return this._title; + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - // title_align - computed: false, optional: true, required: false - private _titleAlign?: string; - public get titleAlign() { - return this.getStringAttribute('title_align'); - } - public set titleAlign(value: string) { - this._titleAlign = value; - } - public resetTitleAlign() { - this._titleAlign = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleAlignInput() { - return this._titleAlign; - } - - // title_size - computed: false, optional: true, required: false - private _titleSize?: string; - public get titleSize() { - return this.getStringAttribute('title_size'); - } - public set titleSize(value: string) { - this._titleSize = value; - } - public resetTitleSize() { - this._titleSize = undefined; - } - // Temporarily expose input value. Use with caution. - public get titleSizeInput() { - return this._titleSize; - } - - // custom_link - computed: false, optional: true, required: false - private _customLink = new DashboardWidgetTimeseriesDefinitionCustomLinkList(this, "custom_link", false); - public get customLink() { - return this._customLink; - } - public putCustomLink(value: DashboardWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable) { - this._customLink.internalValue = value; - } - public resetCustomLink() { - this._customLink.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get customLinkInput() { - return this._customLink.internalValue; - } - - // event - computed: false, optional: true, required: false - private _event = new DashboardWidgetTimeseriesDefinitionEventList(this, "event", false); - public get event() { - return this._event; - } - public putEvent(value: DashboardWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable) { - this._event.internalValue = value; - } - public resetEvent() { - this._event.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get eventInput() { - return this._event.internalValue; - } - - // marker - computed: false, optional: true, required: false - private _marker = new DashboardWidgetTimeseriesDefinitionMarkerList(this, "marker", false); - public get marker() { - return this._marker; - } - public putMarker(value: DashboardWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable) { - this._marker.internalValue = value; - } - public resetMarker() { - this._marker.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get markerInput() { - return this._marker.internalValue; - } - - // request - computed: false, optional: true, required: false - private _request = new DashboardWidgetTimeseriesDefinitionRequestList(this, "request", false); - public get request() { - return this._request; - } - public putRequest(value: DashboardWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable) { - this._request.internalValue = value; - } - public resetRequest() { - this._request.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get requestInput() { - return this._request.internalValue; - } - - // right_yaxis - computed: false, optional: true, required: false - private _rightYaxis = new DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference(this, "right_yaxis"); - public get rightYaxis() { - return this._rightYaxis; - } - public putRightYaxis(value: DashboardWidgetTimeseriesDefinitionRightYaxis) { - this._rightYaxis.internalValue = value; - } - public resetRightYaxis() { - this._rightYaxis.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get rightYaxisInput() { - return this._rightYaxis.internalValue; - } - - // yaxis - computed: false, optional: true, required: false - private _yaxis = new DashboardWidgetTimeseriesDefinitionYaxisOutputReference(this, "yaxis"); - public get yaxis() { - return this._yaxis; - } - public putYaxis(value: DashboardWidgetTimeseriesDefinitionYaxis) { - this._yaxis.internalValue = value; - } - public resetYaxis() { - this._yaxis.internalValue = undefined; - } - // Temporarily expose input value. Use with caution. - public get yaxisInput() { - return this._yaxis.internalValue; - } -} -export interface DashboardWidgetToplistDefinitionCustomLink { - /** - * The flag for toggling context menu link visibility. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} - */ - readonly isHidden?: boolean | cdktf.IResolvable; - /** - * The label for the custom link URL. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} - */ - readonly label?: string; - /** - * The URL of the custom link. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} - */ - readonly link?: string; - /** - * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. - * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} - */ - readonly overrideLabel?: string; -} - -export function dashboardWidgetToplistDefinitionCustomLinkToTerraform(struct?: DashboardWidgetToplistDefinitionCustomLink | cdktf.IResolvable): any { - if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } - if (cdktf.isComplexElement(struct)) { - throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); - } - return { - is_hidden: cdktf.booleanToTerraform(struct!.isHidden), - label: cdktf.stringToTerraform(struct!.label), - link: cdktf.stringToTerraform(struct!.link), - override_label: cdktf.stringToTerraform(struct!.overrideLabel), - } -} - -export class DashboardWidgetToplistDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); - } - - public get internalValue(): DashboardWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._isHidden !== undefined) { - hasAnyValues = true; - internalValueResult.isHidden = this._isHidden; - } - if (this._label !== undefined) { + if (this._facet !== undefined) { hasAnyValues = true; - internalValueResult.label = this._label; + internalValueResult.facet = this._facet; } - if (this._link !== undefined) { + if (this._limit !== undefined) { hasAnyValues = true; - internalValueResult.link = this._link; + internalValueResult.limit = this._limit; } - if (this._overrideLabel !== undefined) { + if (this._sortQuery?.internalValue !== undefined) { hasAnyValues = true; - internalValueResult.overrideLabel = this._overrideLabel; + internalValueResult.sortQuery = this._sortQuery?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; - this._isHidden = undefined; - this._label = undefined; - this._link = undefined; - this._overrideLabel = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; @@ -19515,80 +17839,63 @@ export class DashboardWidgetToplistDefinitionCustomLinkOutputReference extends c else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; - this._isHidden = value.isHidden; - this._label = value.label; - this._link = value.link; - this._overrideLabel = value.overrideLabel; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; } } - // is_hidden - computed: false, optional: true, required: false - private _isHidden?: boolean | cdktf.IResolvable; - public get isHidden() { - return this.getBooleanAttribute('is_hidden'); - } - public set isHidden(value: boolean | cdktf.IResolvable) { - this._isHidden = value; - } - public resetIsHidden() { - this._isHidden = undefined; - } - // Temporarily expose input value. Use with caution. - public get isHiddenInput() { - return this._isHidden; - } - - // label - computed: false, optional: true, required: false - private _label?: string; - public get label() { - return this.getStringAttribute('label'); + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); } - public set label(value: string) { - this._label = value; + public set facet(value: string) { + this._facet = value; } - public resetLabel() { - this._label = undefined; + public resetFacet() { + this._facet = undefined; } // Temporarily expose input value. Use with caution. - public get labelInput() { - return this._label; + public get facetInput() { + return this._facet; } - // link - computed: false, optional: true, required: false - private _link?: string; - public get link() { - return this.getStringAttribute('link'); + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); } - public set link(value: string) { - this._link = value; + public set limit(value: number) { + this._limit = value; } - public resetLink() { - this._link = undefined; + public resetLimit() { + this._limit = undefined; } // Temporarily expose input value. Use with caution. - public get linkInput() { - return this._link; + public get limitInput() { + return this._limit; } - // override_label - computed: false, optional: true, required: false - private _overrideLabel?: string; - public get overrideLabel() { - return this.getStringAttribute('override_label'); + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; } - public set overrideLabel(value: string) { - this._overrideLabel = value; + public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; } - public resetOverrideLabel() { - this._overrideLabel = undefined; + public resetSortQuery() { + this._sortQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get overrideLabelInput() { - return this._overrideLabel; + public get sortQueryInput() { + return this._sortQuery.internalValue; } } -export class DashboardWidgetToplistDefinitionCustomLinkList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable /** * @param terraformResource The parent resource @@ -19602,11 +17909,11 @@ export class DashboardWidgetToplistDefinitionCustomLinkList extends cdktf.Comple /** * @param index the index of the item to return */ - public get(index: number): DashboardWidgetToplistDefinitionCustomLinkOutputReference { - return new DashboardWidgetToplistDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } -export interface DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery { +export interface DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute { /** * The aggregation method. * @@ -19627,7 +17934,7 @@ export interface DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery { readonly interval?: number; } -export function dashboardWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); @@ -19639,18 +17946,24 @@ export function dashboardWidgetToplistDefinitionRequestApmQueryComputeQueryToTer } } -export class DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); } - public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined { + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; if (this._aggregation !== undefined) { @@ -19668,15 +17981,21 @@ export class DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputRe return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute | cdktf.IResolvable | undefined) { if (value === undefined) { this.isEmptyObject = false; + this.resolvableValue = undefined; this._aggregation = undefined; this._facet = undefined; this._interval = undefined; } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } else { this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; this._aggregation = value.aggregation; this._facet = value.facet; this._interval = value.interval; @@ -19728,7 +18047,207 @@ export class DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputRe return this._interval; } } -export interface DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery { + +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestRumQuery { + /** + * The name of the index to query. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + */ + readonly index: string; + /** + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestRumQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeToTerraform, true)(struct!.multiCompute), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestRumQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestRumQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } + } + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestRumQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery { /** * The aggregation method. * @@ -19742,419 +18261,1688 @@ export interface DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery */ readonly facet?: string; /** - * Widget sorting methods. Valid values are `asc`, `desc`. + * Define the time interval in seconds. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} */ - readonly order: string; + readonly interval?: number; } -export function dashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery): any { +export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } - return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - order: cdktf.stringToTerraform(struct!.order), + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} + +export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery; +} + +export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryToTerraform(struct!.sortQuery), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} + +export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestSecurityQuery { + /** + * The name of the index to query. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#index Dashboard#index} + */ + readonly index: string; + /** + * The search query to use. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#search_query Dashboard#search_query} + */ + readonly searchQuery?: string; + /** + * compute_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute_query Dashboard#compute_query} + */ + readonly computeQuery?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery; + /** + * group_by block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#group_by Dashboard#group_by} + */ + readonly groupBy?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable; + /** + * multi_compute block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#multi_compute Dashboard#multi_compute} + */ + readonly multiCompute?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable; +} + +export function dashboardWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference | DashboardWidgetTimeseriesDefinitionRequestSecurityQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + index: cdktf.stringToTerraform(struct!.index), + search_query: cdktf.stringToTerraform(struct!.searchQuery), + compute_query: dashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryToTerraform(struct!.computeQuery), + group_by: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByToTerraform, true)(struct!.groupBy), + multi_compute: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeToTerraform, true)(struct!.multiCompute), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestSecurityQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._index !== undefined) { + hasAnyValues = true; + internalValueResult.index = this._index; + } + if (this._searchQuery !== undefined) { + hasAnyValues = true; + internalValueResult.searchQuery = this._searchQuery; + } + if (this._computeQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.computeQuery = this._computeQuery?.internalValue; + } + if (this._groupBy?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.groupBy = this._groupBy?.internalValue; + } + if (this._multiCompute?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.multiCompute = this._multiCompute?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._index = undefined; + this._searchQuery = undefined; + this._computeQuery.internalValue = undefined; + this._groupBy.internalValue = undefined; + this._multiCompute.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._index = value.index; + this._searchQuery = value.searchQuery; + this._computeQuery.internalValue = value.computeQuery; + this._groupBy.internalValue = value.groupBy; + this._multiCompute.internalValue = value.multiCompute; + } + } + + // index - computed: false, optional: false, required: true + private _index?: string; + public get index() { + return this.getStringAttribute('index'); + } + public set index(value: string) { + this._index = value; + } + // Temporarily expose input value. Use with caution. + public get indexInput() { + return this._index; + } + + // search_query - computed: false, optional: true, required: false + private _searchQuery?: string; + public get searchQuery() { + return this.getStringAttribute('search_query'); + } + public set searchQuery(value: string) { + this._searchQuery = value; + } + public resetSearchQuery() { + this._searchQuery = undefined; + } + // Temporarily expose input value. Use with caution. + public get searchQueryInput() { + return this._searchQuery; + } + + // compute_query - computed: false, optional: true, required: false + private _computeQuery = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQueryOutputReference(this, "compute_query"); + public get computeQuery() { + return this._computeQuery; + } + public putComputeQuery(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryComputeQuery) { + this._computeQuery.internalValue = value; + } + public resetComputeQuery() { + this._computeQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get computeQueryInput() { + return this._computeQuery.internalValue; + } + + // group_by - computed: false, optional: true, required: false + private _groupBy = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupByList(this, "group_by", false); + public get groupBy() { + return this._groupBy; + } + public putGroupBy(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryGroupBy[] | cdktf.IResolvable) { + this._groupBy.internalValue = value; + } + public resetGroupBy() { + this._groupBy.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get groupByInput() { + return this._groupBy.internalValue; + } + + // multi_compute - computed: false, optional: true, required: false + private _multiCompute = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiComputeList(this, "multi_compute", false); + public get multiCompute() { + return this._multiCompute; + } + public putMultiCompute(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQueryMultiCompute[] | cdktf.IResolvable) { + this._multiCompute.internalValue = value; + } + public resetMultiCompute() { + this._multiCompute.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get multiComputeInput() { + return this._multiCompute.internalValue; + } +} +export interface DashboardWidgetTimeseriesDefinitionRequestStyle { + /** + * The type of lines displayed. Valid values are `dashed`, `dotted`, `solid`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_type Dashboard#line_type} + */ + readonly lineType?: string; + /** + * The width of line displayed. Valid values are `normal`, `thick`, `thin`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#line_width Dashboard#line_width} + */ + readonly lineWidth?: string; + /** + * A color palette to apply to the widget. The available options are available at: https://docs.datadoghq.com/dashboards/widgets/timeseries/#appearance. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#palette Dashboard#palette} + */ + readonly palette?: string; +} + +export function dashboardWidgetTimeseriesDefinitionRequestStyleToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference | DashboardWidgetTimeseriesDefinitionRequestStyle): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + line_type: cdktf.stringToTerraform(struct!.lineType), + line_width: cdktf.stringToTerraform(struct!.lineWidth), + palette: cdktf.stringToTerraform(struct!.palette), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequestStyle | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._lineType !== undefined) { + hasAnyValues = true; + internalValueResult.lineType = this._lineType; + } + if (this._lineWidth !== undefined) { + hasAnyValues = true; + internalValueResult.lineWidth = this._lineWidth; + } + if (this._palette !== undefined) { + hasAnyValues = true; + internalValueResult.palette = this._palette; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequestStyle | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._lineType = undefined; + this._lineWidth = undefined; + this._palette = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._lineType = value.lineType; + this._lineWidth = value.lineWidth; + this._palette = value.palette; + } + } + + // line_type - computed: false, optional: true, required: false + private _lineType?: string; + public get lineType() { + return this.getStringAttribute('line_type'); + } + public set lineType(value: string) { + this._lineType = value; + } + public resetLineType() { + this._lineType = undefined; + } + // Temporarily expose input value. Use with caution. + public get lineTypeInput() { + return this._lineType; + } + + // line_width - computed: false, optional: true, required: false + private _lineWidth?: string; + public get lineWidth() { + return this.getStringAttribute('line_width'); + } + public set lineWidth(value: string) { + this._lineWidth = value; + } + public resetLineWidth() { + this._lineWidth = undefined; + } + // Temporarily expose input value. Use with caution. + public get lineWidthInput() { + return this._lineWidth; + } + + // palette - computed: false, optional: true, required: false + private _palette?: string; + public get palette() { + return this.getStringAttribute('palette'); + } + public set palette(value: string) { + this._palette = value; + } + public resetPalette() { + this._palette = undefined; + } + // Temporarily expose input value. Use with caution. + public get paletteInput() { + return this._palette; + } +} +export interface DashboardWidgetTimeseriesDefinitionRequest { + /** + * How to display the marker lines. Valid values are `area`, `bars`, `line`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#display_type Dashboard#display_type} + */ + readonly displayType?: string; + /** + * A Boolean indicating whether the request uses the right or left Y-Axis. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#on_right_yaxis Dashboard#on_right_yaxis} + */ + readonly onRightYaxis?: boolean | cdktf.IResolvable; + /** + * The metric query to use for this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#q Dashboard#q} + */ + readonly q?: string; + /** + * apm_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#apm_query Dashboard#apm_query} + */ + readonly apmQuery?: DashboardWidgetTimeseriesDefinitionRequestApmQuery; + /** + * audit_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#audit_query Dashboard#audit_query} + */ + readonly auditQuery?: DashboardWidgetTimeseriesDefinitionRequestAuditQuery; + /** + * formula block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#formula Dashboard#formula} + */ + readonly formula?: DashboardWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable; + /** + * log_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#log_query Dashboard#log_query} + */ + readonly logQuery?: DashboardWidgetTimeseriesDefinitionRequestLogQuery; + /** + * metadata block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#metadata Dashboard#metadata} + */ + readonly metadata?: DashboardWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable; + /** + * network_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#network_query Dashboard#network_query} + */ + readonly networkQuery?: DashboardWidgetTimeseriesDefinitionRequestNetworkQuery; + /** + * process_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#process_query Dashboard#process_query} + */ + readonly processQuery?: DashboardWidgetTimeseriesDefinitionRequestProcessQuery; + /** + * query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query Dashboard#query} + */ + readonly query?: DashboardWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable; + /** + * rum_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#rum_query Dashboard#rum_query} + */ + readonly rumQuery?: DashboardWidgetTimeseriesDefinitionRequestRumQuery; + /** + * security_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#security_query Dashboard#security_query} + */ + readonly securityQuery?: DashboardWidgetTimeseriesDefinitionRequestSecurityQuery; + /** + * style block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#style Dashboard#style} + */ + readonly style?: DashboardWidgetTimeseriesDefinitionRequestStyle; +} + +export function dashboardWidgetTimeseriesDefinitionRequestToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRequest | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + display_type: cdktf.stringToTerraform(struct!.displayType), + on_right_yaxis: cdktf.booleanToTerraform(struct!.onRightYaxis), + q: cdktf.stringToTerraform(struct!.q), + apm_query: dashboardWidgetTimeseriesDefinitionRequestApmQueryToTerraform(struct!.apmQuery), + audit_query: dashboardWidgetTimeseriesDefinitionRequestAuditQueryToTerraform(struct!.auditQuery), + formula: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestFormulaToTerraform, true)(struct!.formula), + log_query: dashboardWidgetTimeseriesDefinitionRequestLogQueryToTerraform(struct!.logQuery), + metadata: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestMetadataToTerraform, true)(struct!.metadata), + network_query: dashboardWidgetTimeseriesDefinitionRequestNetworkQueryToTerraform(struct!.networkQuery), + process_query: dashboardWidgetTimeseriesDefinitionRequestProcessQueryToTerraform(struct!.processQuery), + query: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestQueryToTerraform, true)(struct!.query), + rum_query: dashboardWidgetTimeseriesDefinitionRequestRumQueryToTerraform(struct!.rumQuery), + security_query: dashboardWidgetTimeseriesDefinitionRequestSecurityQueryToTerraform(struct!.securityQuery), + style: dashboardWidgetTimeseriesDefinitionRequestStyleToTerraform(struct!.style), + } +} + +export class DashboardWidgetTimeseriesDefinitionRequestOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._displayType !== undefined) { + hasAnyValues = true; + internalValueResult.displayType = this._displayType; + } + if (this._onRightYaxis !== undefined) { + hasAnyValues = true; + internalValueResult.onRightYaxis = this._onRightYaxis; + } + if (this._q !== undefined) { + hasAnyValues = true; + internalValueResult.q = this._q; + } + if (this._apmQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.apmQuery = this._apmQuery?.internalValue; + } + if (this._auditQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.auditQuery = this._auditQuery?.internalValue; + } + if (this._formula?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.formula = this._formula?.internalValue; + } + if (this._logQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.logQuery = this._logQuery?.internalValue; + } + if (this._metadata?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.metadata = this._metadata?.internalValue; + } + if (this._networkQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.networkQuery = this._networkQuery?.internalValue; + } + if (this._processQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.processQuery = this._processQuery?.internalValue; + } + if (this._query?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.query = this._query?.internalValue; + } + if (this._rumQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rumQuery = this._rumQuery?.internalValue; + } + if (this._securityQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.securityQuery = this._securityQuery?.internalValue; + } + if (this._style?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.style = this._style?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRequest | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._displayType = undefined; + this._onRightYaxis = undefined; + this._q = undefined; + this._apmQuery.internalValue = undefined; + this._auditQuery.internalValue = undefined; + this._formula.internalValue = undefined; + this._logQuery.internalValue = undefined; + this._metadata.internalValue = undefined; + this._networkQuery.internalValue = undefined; + this._processQuery.internalValue = undefined; + this._query.internalValue = undefined; + this._rumQuery.internalValue = undefined; + this._securityQuery.internalValue = undefined; + this._style.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._displayType = value.displayType; + this._onRightYaxis = value.onRightYaxis; + this._q = value.q; + this._apmQuery.internalValue = value.apmQuery; + this._auditQuery.internalValue = value.auditQuery; + this._formula.internalValue = value.formula; + this._logQuery.internalValue = value.logQuery; + this._metadata.internalValue = value.metadata; + this._networkQuery.internalValue = value.networkQuery; + this._processQuery.internalValue = value.processQuery; + this._query.internalValue = value.query; + this._rumQuery.internalValue = value.rumQuery; + this._securityQuery.internalValue = value.securityQuery; + this._style.internalValue = value.style; + } + } + + // display_type - computed: false, optional: true, required: false + private _displayType?: string; + public get displayType() { + return this.getStringAttribute('display_type'); + } + public set displayType(value: string) { + this._displayType = value; + } + public resetDisplayType() { + this._displayType = undefined; + } + // Temporarily expose input value. Use with caution. + public get displayTypeInput() { + return this._displayType; + } + + // on_right_yaxis - computed: false, optional: true, required: false + private _onRightYaxis?: boolean | cdktf.IResolvable; + public get onRightYaxis() { + return this.getBooleanAttribute('on_right_yaxis'); + } + public set onRightYaxis(value: boolean | cdktf.IResolvable) { + this._onRightYaxis = value; + } + public resetOnRightYaxis() { + this._onRightYaxis = undefined; + } + // Temporarily expose input value. Use with caution. + public get onRightYaxisInput() { + return this._onRightYaxis; + } + + // q - computed: false, optional: true, required: false + private _q?: string; + public get q() { + return this.getStringAttribute('q'); + } + public set q(value: string) { + this._q = value; + } + public resetQ() { + this._q = undefined; + } + // Temporarily expose input value. Use with caution. + public get qInput() { + return this._q; + } + + // apm_query - computed: false, optional: true, required: false + private _apmQuery = new DashboardWidgetTimeseriesDefinitionRequestApmQueryOutputReference(this, "apm_query"); + public get apmQuery() { + return this._apmQuery; + } + public putApmQuery(value: DashboardWidgetTimeseriesDefinitionRequestApmQuery) { + this._apmQuery.internalValue = value; + } + public resetApmQuery() { + this._apmQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get apmQueryInput() { + return this._apmQuery.internalValue; + } + + // audit_query - computed: false, optional: true, required: false + private _auditQuery = new DashboardWidgetTimeseriesDefinitionRequestAuditQueryOutputReference(this, "audit_query"); + public get auditQuery() { + return this._auditQuery; + } + public putAuditQuery(value: DashboardWidgetTimeseriesDefinitionRequestAuditQuery) { + this._auditQuery.internalValue = value; + } + public resetAuditQuery() { + this._auditQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get auditQueryInput() { + return this._auditQuery.internalValue; + } + + // formula - computed: false, optional: true, required: false + private _formula = new DashboardWidgetTimeseriesDefinitionRequestFormulaList(this, "formula", false); + public get formula() { + return this._formula; + } + public putFormula(value: DashboardWidgetTimeseriesDefinitionRequestFormula[] | cdktf.IResolvable) { + this._formula.internalValue = value; + } + public resetFormula() { + this._formula.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get formulaInput() { + return this._formula.internalValue; + } + + // log_query - computed: false, optional: true, required: false + private _logQuery = new DashboardWidgetTimeseriesDefinitionRequestLogQueryOutputReference(this, "log_query"); + public get logQuery() { + return this._logQuery; + } + public putLogQuery(value: DashboardWidgetTimeseriesDefinitionRequestLogQuery) { + this._logQuery.internalValue = value; + } + public resetLogQuery() { + this._logQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get logQueryInput() { + return this._logQuery.internalValue; + } + + // metadata - computed: false, optional: true, required: false + private _metadata = new DashboardWidgetTimeseriesDefinitionRequestMetadataList(this, "metadata", false); + public get metadata() { + return this._metadata; + } + public putMetadata(value: DashboardWidgetTimeseriesDefinitionRequestMetadata[] | cdktf.IResolvable) { + this._metadata.internalValue = value; + } + public resetMetadata() { + this._metadata.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get metadataInput() { + return this._metadata.internalValue; + } + + // network_query - computed: false, optional: true, required: false + private _networkQuery = new DashboardWidgetTimeseriesDefinitionRequestNetworkQueryOutputReference(this, "network_query"); + public get networkQuery() { + return this._networkQuery; + } + public putNetworkQuery(value: DashboardWidgetTimeseriesDefinitionRequestNetworkQuery) { + this._networkQuery.internalValue = value; + } + public resetNetworkQuery() { + this._networkQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get networkQueryInput() { + return this._networkQuery.internalValue; + } + + // process_query - computed: false, optional: true, required: false + private _processQuery = new DashboardWidgetTimeseriesDefinitionRequestProcessQueryOutputReference(this, "process_query"); + public get processQuery() { + return this._processQuery; + } + public putProcessQuery(value: DashboardWidgetTimeseriesDefinitionRequestProcessQuery) { + this._processQuery.internalValue = value; + } + public resetProcessQuery() { + this._processQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get processQueryInput() { + return this._processQuery.internalValue; + } + + // query - computed: false, optional: true, required: false + private _query = new DashboardWidgetTimeseriesDefinitionRequestQueryList(this, "query", false); + public get query() { + return this._query; + } + public putQuery(value: DashboardWidgetTimeseriesDefinitionRequestQuery[] | cdktf.IResolvable) { + this._query.internalValue = value; } -} - -export class DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { - private isEmptyObject = false; - - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { - super(terraformResource, terraformAttribute, false, 0); + public resetQuery() { + this._query.internalValue = undefined; } - - public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined { - let hasAnyValues = this.isEmptyObject; - const internalValueResult: any = {}; - if (this._aggregation !== undefined) { - hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; - } - if (this._facet !== undefined) { - hasAnyValues = true; - internalValueResult.facet = this._facet; - } - if (this._order !== undefined) { - hasAnyValues = true; - internalValueResult.order = this._order; - } - return hasAnyValues ? internalValueResult : undefined; + // Temporarily expose input value. Use with caution. + public get queryInput() { + return this._query.internalValue; } - public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined) { - if (value === undefined) { - this.isEmptyObject = false; - this._aggregation = undefined; - this._facet = undefined; - this._order = undefined; - } - else { - this.isEmptyObject = Object.keys(value).length === 0; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._order = value.order; - } + // rum_query - computed: false, optional: true, required: false + private _rumQuery = new DashboardWidgetTimeseriesDefinitionRequestRumQueryOutputReference(this, "rum_query"); + public get rumQuery() { + return this._rumQuery; } - - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + public putRumQuery(value: DashboardWidgetTimeseriesDefinitionRequestRumQuery) { + this._rumQuery.internalValue = value; } - public set aggregation(value: string) { - this._aggregation = value; + public resetRumQuery() { + this._rumQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get rumQueryInput() { + return this._rumQuery.internalValue; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // security_query - computed: false, optional: true, required: false + private _securityQuery = new DashboardWidgetTimeseriesDefinitionRequestSecurityQueryOutputReference(this, "security_query"); + public get securityQuery() { + return this._securityQuery; } - public set facet(value: string) { - this._facet = value; + public putSecurityQuery(value: DashboardWidgetTimeseriesDefinitionRequestSecurityQuery) { + this._securityQuery.internalValue = value; } - public resetFacet() { - this._facet = undefined; + public resetSecurityQuery() { + this._securityQuery.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get securityQueryInput() { + return this._securityQuery.internalValue; } - // order - computed: false, optional: false, required: true - private _order?: string; - public get order() { - return this.getStringAttribute('order'); + // style - computed: false, optional: true, required: false + private _style = new DashboardWidgetTimeseriesDefinitionRequestStyleOutputReference(this, "style"); + public get style() { + return this._style; } - public set order(value: string) { - this._order = value; + public putStyle(value: DashboardWidgetTimeseriesDefinitionRequestStyle) { + this._style.internalValue = value; + } + public resetStyle() { + this._style.internalValue = undefined; } // Temporarily expose input value. Use with caution. - public get orderInput() { - return this._order; + public get styleInput() { + return this._style.internalValue; } } -export interface DashboardWidgetToplistDefinitionRequestApmQueryGroupBy { + +export class DashboardWidgetTimeseriesDefinitionRequestList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable + /** - * The facet name. + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetTimeseriesDefinitionRequestOutputReference { + return new DashboardWidgetTimeseriesDefinitionRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetTimeseriesDefinitionRightYaxis { + /** + * Always include zero or fit the axis to the data range. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - readonly facet?: string; + readonly includeZero?: boolean | cdktf.IResolvable; /** - * The maximum number of items in the group. + * The label of the axis to display on the graph. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - readonly limit?: number; + readonly label?: string; /** - * sort_query block + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly sortQuery?: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery; + readonly max?: string; + /** + * Specify the minimum value to show on the Y-axis. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} + */ + readonly min?: string; + /** + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} + */ + readonly scale?: string; } -export function dashboardWidgetToplistDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionRightYaxisToTerraform(struct?: DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference | DashboardWidgetTimeseriesDefinitionRightYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - facet: cdktf.stringToTerraform(struct!.facet), - limit: cdktf.numberToTerraform(struct!.limit), - sort_query: dashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), + label: cdktf.stringToTerraform(struct!.label), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetToplistDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionRightYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._facet !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.includeZero = this._includeZero; } - if (this._limit !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.limit = this._limit; + internalValueResult.label = this._label; } - if (this._sortQuery?.internalValue !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.sortQuery = this._sortQuery?.internalValue; + internalValueResult.max = this._max; + } + if (this._min !== undefined) { + hasAnyValues = true; + internalValueResult.min = this._min; + } + if (this._scale !== undefined) { + hasAnyValues = true; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionRightYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._facet = undefined; - this._limit = undefined; - this._sortQuery.internalValue = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._includeZero = undefined; + this._label = undefined; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._facet = value.facet; - this._limit = value.limit; - this._sortQuery.internalValue = value.sortQuery; + this._includeZero = value.includeZero; + this._label = value.label; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); + } + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; + } + public resetIncludeZero() { + this._includeZero = undefined; + } + // Temporarily expose input value. Use with caution. + public get includeZeroInput() { + return this._includeZero; + } + + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); + } + public set label(value: string) { + this._label = value; + } + public resetLabel() { + this._label = undefined; + } + // Temporarily expose input value. Use with caution. + public get labelInput() { + return this._label; + } + + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set facet(value: string) { - this._facet = value; + public set max(value: string) { + this._max = value; } - public resetFacet() { - this._facet = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get maxInput() { + return this._max; } - // limit - computed: false, optional: true, required: false - private _limit?: number; - public get limit() { - return this.getNumberAttribute('limit'); + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); } - public set limit(value: number) { - this._limit = value; + public set min(value: string) { + this._min = value; } - public resetLimit() { - this._limit = undefined; + public resetMin() { + this._min = undefined; } // Temporarily expose input value. Use with caution. - public get limitInput() { - return this._limit; + public get minInput() { + return this._min; } - // sort_query - computed: false, optional: true, required: false - private _sortQuery = new DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); - public get sortQuery() { - return this._sortQuery; + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); } - public putSortQuery(value: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery) { - this._sortQuery.internalValue = value; + public set scale(value: string) { + this._scale = value; } - public resetSortQuery() { - this._sortQuery.internalValue = undefined; + public resetScale() { + this._scale = undefined; } // Temporarily expose input value. Use with caution. - public get sortQueryInput() { - return this._sortQuery.internalValue; + public get scaleInput() { + return this._scale; } } - -export class DashboardWidgetToplistDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable - +export interface DashboardWidgetTimeseriesDefinitionYaxis { /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + * Always include zero or fit the axis to the data range. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#include_zero Dashboard#include_zero} */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) - } - + readonly includeZero?: boolean | cdktf.IResolvable; /** - * @param index the index of the item to return + * The label of the axis to display on the graph. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} */ - public get(index: number): DashboardWidgetToplistDefinitionRequestApmQueryGroupByOutputReference { - return new DashboardWidgetToplistDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); - } -} -export interface DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute { + readonly label?: string; /** - * The aggregation method. + * Specify the maximum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#max Dashboard#max} */ - readonly aggregation: string; + readonly max?: string; /** - * The facet name. + * Specify the minimum value to show on the Y-axis. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#min Dashboard#min} */ - readonly facet?: string; + readonly min?: string; /** - * Define the time interval in seconds. + * Specify the scale type, options: `linear`, `log`, `pow`, `sqrt`. * - * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#scale Dashboard#scale} */ - readonly interval?: number; + readonly scale?: string; } -export function dashboardWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { +export function dashboardWidgetTimeseriesDefinitionYaxisToTerraform(struct?: DashboardWidgetTimeseriesDefinitionYaxisOutputReference | DashboardWidgetTimeseriesDefinitionYaxis): any { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { - aggregation: cdktf.stringToTerraform(struct!.aggregation), - facet: cdktf.stringToTerraform(struct!.facet), - interval: cdktf.numberToTerraform(struct!.interval), + include_zero: cdktf.booleanToTerraform(struct!.includeZero), + label: cdktf.stringToTerraform(struct!.label), + max: cdktf.stringToTerraform(struct!.max), + min: cdktf.stringToTerraform(struct!.min), + scale: cdktf.stringToTerraform(struct!.scale), } } -export class DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { +export class DashboardWidgetTimeseriesDefinitionYaxisOutputReference extends cdktf.ComplexObject { private isEmptyObject = false; - private resolvableValue?: cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param complexObjectIndex the index of this item in the list - * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ - public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { - super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); } - public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { - if (this.resolvableValue) { - return this.resolvableValue; - } + public get internalValue(): DashboardWidgetTimeseriesDefinitionYaxis | undefined { let hasAnyValues = this.isEmptyObject; const internalValueResult: any = {}; - if (this._aggregation !== undefined) { + if (this._includeZero !== undefined) { hasAnyValues = true; - internalValueResult.aggregation = this._aggregation; + internalValueResult.includeZero = this._includeZero; } - if (this._facet !== undefined) { + if (this._label !== undefined) { hasAnyValues = true; - internalValueResult.facet = this._facet; + internalValueResult.label = this._label; } - if (this._interval !== undefined) { + if (this._max !== undefined) { hasAnyValues = true; - internalValueResult.interval = this._interval; + internalValueResult.max = this._max; + } + if (this._min !== undefined) { + hasAnyValues = true; + internalValueResult.min = this._min; + } + if (this._scale !== undefined) { + hasAnyValues = true; + internalValueResult.scale = this._scale; } return hasAnyValues ? internalValueResult : undefined; } - public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + public set internalValue(value: DashboardWidgetTimeseriesDefinitionYaxis | undefined) { if (value === undefined) { this.isEmptyObject = false; - this.resolvableValue = undefined; - this._aggregation = undefined; - this._facet = undefined; - this._interval = undefined; - } - else if (cdktf.Tokenization.isResolvable(value)) { - this.isEmptyObject = false; - this.resolvableValue = value; + this._includeZero = undefined; + this._label = undefined; + this._max = undefined; + this._min = undefined; + this._scale = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; - this.resolvableValue = undefined; - this._aggregation = value.aggregation; - this._facet = value.facet; - this._interval = value.interval; + this._includeZero = value.includeZero; + this._label = value.label; + this._max = value.max; + this._min = value.min; + this._scale = value.scale; } } - // aggregation - computed: false, optional: false, required: true - private _aggregation?: string; - public get aggregation() { - return this.getStringAttribute('aggregation'); + // include_zero - computed: false, optional: true, required: false + private _includeZero?: boolean | cdktf.IResolvable; + public get includeZero() { + return this.getBooleanAttribute('include_zero'); } - public set aggregation(value: string) { - this._aggregation = value; + public set includeZero(value: boolean | cdktf.IResolvable) { + this._includeZero = value; + } + public resetIncludeZero() { + this._includeZero = undefined; } // Temporarily expose input value. Use with caution. - public get aggregationInput() { - return this._aggregation; + public get includeZeroInput() { + return this._includeZero; } - // facet - computed: false, optional: true, required: false - private _facet?: string; - public get facet() { - return this.getStringAttribute('facet'); + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); } - public set facet(value: string) { - this._facet = value; + public set label(value: string) { + this._label = value; } - public resetFacet() { - this._facet = undefined; + public resetLabel() { + this._label = undefined; } // Temporarily expose input value. Use with caution. - public get facetInput() { - return this._facet; + public get labelInput() { + return this._label; } - // interval - computed: false, optional: true, required: false - private _interval?: number; - public get interval() { - return this.getNumberAttribute('interval'); + // max - computed: false, optional: true, required: false + private _max?: string; + public get max() { + return this.getStringAttribute('max'); } - public set interval(value: number) { - this._interval = value; + public set max(value: string) { + this._max = value; } - public resetInterval() { - this._interval = undefined; + public resetMax() { + this._max = undefined; } // Temporarily expose input value. Use with caution. - public get intervalInput() { - return this._interval; + public get maxInput() { + return this._max; } -} - -export class DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { - public internalValue? : DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable - /** - * @param terraformResource The parent resource - * @param terraformAttribute The attribute on the parent resource this class is referencing - * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) - */ - constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { - super(terraformResource, terraformAttribute, wrapsSet) + // min - computed: false, optional: true, required: false + private _min?: string; + public get min() { + return this.getStringAttribute('min'); + } + public set min(value: string) { + this._min = value; + } + public resetMin() { + this._min = undefined; + } + // Temporarily expose input value. Use with caution. + public get minInput() { + return this._min; } - /** - * @param index the index of the item to return - */ - public get(index: number): DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference { - return new DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + // scale - computed: false, optional: true, required: false + private _scale?: string; + public get scale() { + return this.getStringAttribute('scale'); + } + public set scale(value: string) { + this._scale = value; + } + public resetScale() { + this._scale = undefined; + } + // Temporarily expose input value. Use with caution. + public get scaleInput() { + return this._scale; } } diff --git a/src/dashboard/index-structs/structs3200.ts b/src/dashboard/index-structs/structs3200.ts index f1dcd5e5b..db852d3c7 100644 --- a/src/dashboard/index-structs/structs3200.ts +++ b/src/dashboard/index-structs/structs3200.ts @@ -1,16 +1,22 @@ import * as cdktf from 'cdktf'; -import { DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery, -dashboardWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform, -DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference, -DashboardWidgetToplistDefinitionRequestApmQueryGroupBy, -dashboardWidgetToplistDefinitionRequestApmQueryGroupByToTerraform, -DashboardWidgetToplistDefinitionRequestApmQueryGroupByList, -DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute, -dashboardWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform, -DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeList, -DashboardWidgetToplistDefinitionCustomLink, -dashboardWidgetToplistDefinitionCustomLinkToTerraform, -DashboardWidgetToplistDefinitionCustomLinkList, +import { DashboardWidgetTimeseriesDefinitionCustomLink, +dashboardWidgetTimeseriesDefinitionCustomLinkToTerraform, +DashboardWidgetTimeseriesDefinitionCustomLinkList, +DashboardWidgetTimeseriesDefinitionEvent, +dashboardWidgetTimeseriesDefinitionEventToTerraform, +DashboardWidgetTimeseriesDefinitionEventList, +DashboardWidgetTimeseriesDefinitionMarker, +dashboardWidgetTimeseriesDefinitionMarkerToTerraform, +DashboardWidgetTimeseriesDefinitionMarkerList, +DashboardWidgetTimeseriesDefinitionRequest, +dashboardWidgetTimeseriesDefinitionRequestToTerraform, +DashboardWidgetTimeseriesDefinitionRequestList, +DashboardWidgetTimeseriesDefinitionRightYaxis, +dashboardWidgetTimeseriesDefinitionRightYaxisToTerraform, +DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference, +DashboardWidgetTimeseriesDefinitionYaxis, +dashboardWidgetTimeseriesDefinitionYaxisToTerraform, +DashboardWidgetTimeseriesDefinitionYaxisOutputReference, DashboardWidgetScatterplotDefinition, dashboardWidgetScatterplotDefinitionToTerraform, DashboardWidgetScatterplotDefinitionOutputReference, @@ -20,12 +26,12 @@ DashboardWidgetServiceLevelObjectiveDefinitionOutputReference, DashboardWidgetServicemapDefinition, dashboardWidgetServicemapDefinitionToTerraform, DashboardWidgetServicemapDefinitionOutputReference, +DashboardWidgetSloListDefinition, +dashboardWidgetSloListDefinitionToTerraform, +DashboardWidgetSloListDefinitionOutputReference, DashboardWidgetSunburstDefinition, dashboardWidgetSunburstDefinitionToTerraform, -DashboardWidgetSunburstDefinitionOutputReference, -DashboardWidgetTimeseriesDefinition, -dashboardWidgetTimeseriesDefinitionToTerraform, -DashboardWidgetTimeseriesDefinitionOutputReference } from './structs2800' +DashboardWidgetSunburstDefinitionOutputReference } from './structs2800' import { DashboardWidgetAlertGraphDefinition, dashboardWidgetAlertGraphDefinitionToTerraform, DashboardWidgetAlertGraphDefinitionOutputReference, @@ -86,6 +92,1188 @@ DashboardWidgetQueryTableDefinitionOutputReference, DashboardWidgetQueryValueDefinition, dashboardWidgetQueryValueDefinitionToTerraform, DashboardWidgetQueryValueDefinitionOutputReference } from './structs2400' +export interface DashboardWidgetTimeseriesDefinition { + /** + * A list of columns to display in the legend. Valid values are `value`, `avg`, `sum`, `min`, `max`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_columns Dashboard#legend_columns} + */ + readonly legendColumns?: string[]; + /** + * The layout of the legend displayed in the widget. Valid values are `auto`, `horizontal`, `vertical`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_layout Dashboard#legend_layout} + */ + readonly legendLayout?: string; + /** + * The size of the legend displayed in the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#legend_size Dashboard#legend_size} + */ + readonly legendSize?: string; + /** + * The timeframe to use when displaying the widget. Valid values are `1m`, `5m`, `10m`, `15m`, `30m`, `1h`, `4h`, `1d`, `2d`, `1w`, `1mo`, `3mo`, `6mo`, `1y`, `alert`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#live_span Dashboard#live_span} + */ + readonly liveSpan?: string; + /** + * Whether or not to show the legend on this widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#show_legend Dashboard#show_legend} + */ + readonly showLegend?: boolean | cdktf.IResolvable; + /** + * The title of the widget. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title Dashboard#title} + */ + readonly title?: string; + /** + * The alignment of the widget's title. Valid values are `center`, `left`, `right`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_align Dashboard#title_align} + */ + readonly titleAlign?: string; + /** + * The size of the widget's title (defaults to 16). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#title_size Dashboard#title_size} + */ + readonly titleSize?: string; + /** + * custom_link block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#custom_link Dashboard#custom_link} + */ + readonly customLink?: DashboardWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable; + /** + * event block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#event Dashboard#event} + */ + readonly event?: DashboardWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable; + /** + * marker block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#marker Dashboard#marker} + */ + readonly marker?: DashboardWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable; + /** + * request block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#request Dashboard#request} + */ + readonly request?: DashboardWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable; + /** + * right_yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#right_yaxis Dashboard#right_yaxis} + */ + readonly rightYaxis?: DashboardWidgetTimeseriesDefinitionRightYaxis; + /** + * yaxis block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#yaxis Dashboard#yaxis} + */ + readonly yaxis?: DashboardWidgetTimeseriesDefinitionYaxis; +} + +export function dashboardWidgetTimeseriesDefinitionToTerraform(struct?: DashboardWidgetTimeseriesDefinitionOutputReference | DashboardWidgetTimeseriesDefinition): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + legend_columns: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.legendColumns), + legend_layout: cdktf.stringToTerraform(struct!.legendLayout), + legend_size: cdktf.stringToTerraform(struct!.legendSize), + live_span: cdktf.stringToTerraform(struct!.liveSpan), + show_legend: cdktf.booleanToTerraform(struct!.showLegend), + title: cdktf.stringToTerraform(struct!.title), + title_align: cdktf.stringToTerraform(struct!.titleAlign), + title_size: cdktf.stringToTerraform(struct!.titleSize), + custom_link: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionCustomLinkToTerraform, true)(struct!.customLink), + event: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionEventToTerraform, true)(struct!.event), + marker: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionMarkerToTerraform, true)(struct!.marker), + request: cdktf.listMapper(dashboardWidgetTimeseriesDefinitionRequestToTerraform, true)(struct!.request), + right_yaxis: dashboardWidgetTimeseriesDefinitionRightYaxisToTerraform(struct!.rightYaxis), + yaxis: dashboardWidgetTimeseriesDefinitionYaxisToTerraform(struct!.yaxis), + } +} + +export class DashboardWidgetTimeseriesDefinitionOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetTimeseriesDefinition | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._legendColumns !== undefined) { + hasAnyValues = true; + internalValueResult.legendColumns = this._legendColumns; + } + if (this._legendLayout !== undefined) { + hasAnyValues = true; + internalValueResult.legendLayout = this._legendLayout; + } + if (this._legendSize !== undefined) { + hasAnyValues = true; + internalValueResult.legendSize = this._legendSize; + } + if (this._liveSpan !== undefined) { + hasAnyValues = true; + internalValueResult.liveSpan = this._liveSpan; + } + if (this._showLegend !== undefined) { + hasAnyValues = true; + internalValueResult.showLegend = this._showLegend; + } + if (this._title !== undefined) { + hasAnyValues = true; + internalValueResult.title = this._title; + } + if (this._titleAlign !== undefined) { + hasAnyValues = true; + internalValueResult.titleAlign = this._titleAlign; + } + if (this._titleSize !== undefined) { + hasAnyValues = true; + internalValueResult.titleSize = this._titleSize; + } + if (this._customLink?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.customLink = this._customLink?.internalValue; + } + if (this._event?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.event = this._event?.internalValue; + } + if (this._marker?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.marker = this._marker?.internalValue; + } + if (this._request?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.request = this._request?.internalValue; + } + if (this._rightYaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.rightYaxis = this._rightYaxis?.internalValue; + } + if (this._yaxis?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.yaxis = this._yaxis?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetTimeseriesDefinition | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._legendColumns = undefined; + this._legendLayout = undefined; + this._legendSize = undefined; + this._liveSpan = undefined; + this._showLegend = undefined; + this._title = undefined; + this._titleAlign = undefined; + this._titleSize = undefined; + this._customLink.internalValue = undefined; + this._event.internalValue = undefined; + this._marker.internalValue = undefined; + this._request.internalValue = undefined; + this._rightYaxis.internalValue = undefined; + this._yaxis.internalValue = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._legendColumns = value.legendColumns; + this._legendLayout = value.legendLayout; + this._legendSize = value.legendSize; + this._liveSpan = value.liveSpan; + this._showLegend = value.showLegend; + this._title = value.title; + this._titleAlign = value.titleAlign; + this._titleSize = value.titleSize; + this._customLink.internalValue = value.customLink; + this._event.internalValue = value.event; + this._marker.internalValue = value.marker; + this._request.internalValue = value.request; + this._rightYaxis.internalValue = value.rightYaxis; + this._yaxis.internalValue = value.yaxis; + } + } + + // legend_columns - computed: false, optional: true, required: false + private _legendColumns?: string[]; + public get legendColumns() { + return cdktf.Fn.tolist(this.getListAttribute('legend_columns')); + } + public set legendColumns(value: string[]) { + this._legendColumns = value; + } + public resetLegendColumns() { + this._legendColumns = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendColumnsInput() { + return this._legendColumns; + } + + // legend_layout - computed: false, optional: true, required: false + private _legendLayout?: string; + public get legendLayout() { + return this.getStringAttribute('legend_layout'); + } + public set legendLayout(value: string) { + this._legendLayout = value; + } + public resetLegendLayout() { + this._legendLayout = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendLayoutInput() { + return this._legendLayout; + } + + // legend_size - computed: false, optional: true, required: false + private _legendSize?: string; + public get legendSize() { + return this.getStringAttribute('legend_size'); + } + public set legendSize(value: string) { + this._legendSize = value; + } + public resetLegendSize() { + this._legendSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get legendSizeInput() { + return this._legendSize; + } + + // live_span - computed: false, optional: true, required: false + private _liveSpan?: string; + public get liveSpan() { + return this.getStringAttribute('live_span'); + } + public set liveSpan(value: string) { + this._liveSpan = value; + } + public resetLiveSpan() { + this._liveSpan = undefined; + } + // Temporarily expose input value. Use with caution. + public get liveSpanInput() { + return this._liveSpan; + } + + // show_legend - computed: false, optional: true, required: false + private _showLegend?: boolean | cdktf.IResolvable; + public get showLegend() { + return this.getBooleanAttribute('show_legend'); + } + public set showLegend(value: boolean | cdktf.IResolvable) { + this._showLegend = value; + } + public resetShowLegend() { + this._showLegend = undefined; + } + // Temporarily expose input value. Use with caution. + public get showLegendInput() { + return this._showLegend; + } + + // title - computed: false, optional: true, required: false + private _title?: string; + public get title() { + return this.getStringAttribute('title'); + } + public set title(value: string) { + this._title = value; + } + public resetTitle() { + this._title = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleInput() { + return this._title; + } + + // title_align - computed: false, optional: true, required: false + private _titleAlign?: string; + public get titleAlign() { + return this.getStringAttribute('title_align'); + } + public set titleAlign(value: string) { + this._titleAlign = value; + } + public resetTitleAlign() { + this._titleAlign = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleAlignInput() { + return this._titleAlign; + } + + // title_size - computed: false, optional: true, required: false + private _titleSize?: string; + public get titleSize() { + return this.getStringAttribute('title_size'); + } + public set titleSize(value: string) { + this._titleSize = value; + } + public resetTitleSize() { + this._titleSize = undefined; + } + // Temporarily expose input value. Use with caution. + public get titleSizeInput() { + return this._titleSize; + } + + // custom_link - computed: false, optional: true, required: false + private _customLink = new DashboardWidgetTimeseriesDefinitionCustomLinkList(this, "custom_link", false); + public get customLink() { + return this._customLink; + } + public putCustomLink(value: DashboardWidgetTimeseriesDefinitionCustomLink[] | cdktf.IResolvable) { + this._customLink.internalValue = value; + } + public resetCustomLink() { + this._customLink.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get customLinkInput() { + return this._customLink.internalValue; + } + + // event - computed: false, optional: true, required: false + private _event = new DashboardWidgetTimeseriesDefinitionEventList(this, "event", false); + public get event() { + return this._event; + } + public putEvent(value: DashboardWidgetTimeseriesDefinitionEvent[] | cdktf.IResolvable) { + this._event.internalValue = value; + } + public resetEvent() { + this._event.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get eventInput() { + return this._event.internalValue; + } + + // marker - computed: false, optional: true, required: false + private _marker = new DashboardWidgetTimeseriesDefinitionMarkerList(this, "marker", false); + public get marker() { + return this._marker; + } + public putMarker(value: DashboardWidgetTimeseriesDefinitionMarker[] | cdktf.IResolvable) { + this._marker.internalValue = value; + } + public resetMarker() { + this._marker.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get markerInput() { + return this._marker.internalValue; + } + + // request - computed: false, optional: true, required: false + private _request = new DashboardWidgetTimeseriesDefinitionRequestList(this, "request", false); + public get request() { + return this._request; + } + public putRequest(value: DashboardWidgetTimeseriesDefinitionRequest[] | cdktf.IResolvable) { + this._request.internalValue = value; + } + public resetRequest() { + this._request.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get requestInput() { + return this._request.internalValue; + } + + // right_yaxis - computed: false, optional: true, required: false + private _rightYaxis = new DashboardWidgetTimeseriesDefinitionRightYaxisOutputReference(this, "right_yaxis"); + public get rightYaxis() { + return this._rightYaxis; + } + public putRightYaxis(value: DashboardWidgetTimeseriesDefinitionRightYaxis) { + this._rightYaxis.internalValue = value; + } + public resetRightYaxis() { + this._rightYaxis.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get rightYaxisInput() { + return this._rightYaxis.internalValue; + } + + // yaxis - computed: false, optional: true, required: false + private _yaxis = new DashboardWidgetTimeseriesDefinitionYaxisOutputReference(this, "yaxis"); + public get yaxis() { + return this._yaxis; + } + public putYaxis(value: DashboardWidgetTimeseriesDefinitionYaxis) { + this._yaxis.internalValue = value; + } + public resetYaxis() { + this._yaxis.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get yaxisInput() { + return this._yaxis.internalValue; + } +} +export interface DashboardWidgetToplistDefinitionCustomLink { + /** + * The flag for toggling context menu link visibility. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#is_hidden Dashboard#is_hidden} + */ + readonly isHidden?: boolean | cdktf.IResolvable; + /** + * The label for the custom link URL. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#label Dashboard#label} + */ + readonly label?: string; + /** + * The URL of the custom link. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#link Dashboard#link} + */ + readonly link?: string; + /** + * The label id that refers to a context menu link item. When override_label is provided, the client request omits the label field. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#override_label Dashboard#override_label} + */ + readonly overrideLabel?: string; +} + +export function dashboardWidgetToplistDefinitionCustomLinkToTerraform(struct?: DashboardWidgetToplistDefinitionCustomLink | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + is_hidden: cdktf.booleanToTerraform(struct!.isHidden), + label: cdktf.stringToTerraform(struct!.label), + link: cdktf.stringToTerraform(struct!.link), + override_label: cdktf.stringToTerraform(struct!.overrideLabel), + } +} + +export class DashboardWidgetToplistDefinitionCustomLinkOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._isHidden !== undefined) { + hasAnyValues = true; + internalValueResult.isHidden = this._isHidden; + } + if (this._label !== undefined) { + hasAnyValues = true; + internalValueResult.label = this._label; + } + if (this._link !== undefined) { + hasAnyValues = true; + internalValueResult.link = this._link; + } + if (this._overrideLabel !== undefined) { + hasAnyValues = true; + internalValueResult.overrideLabel = this._overrideLabel; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetToplistDefinitionCustomLink | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._isHidden = undefined; + this._label = undefined; + this._link = undefined; + this._overrideLabel = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._isHidden = value.isHidden; + this._label = value.label; + this._link = value.link; + this._overrideLabel = value.overrideLabel; + } + } + + // is_hidden - computed: false, optional: true, required: false + private _isHidden?: boolean | cdktf.IResolvable; + public get isHidden() { + return this.getBooleanAttribute('is_hidden'); + } + public set isHidden(value: boolean | cdktf.IResolvable) { + this._isHidden = value; + } + public resetIsHidden() { + this._isHidden = undefined; + } + // Temporarily expose input value. Use with caution. + public get isHiddenInput() { + return this._isHidden; + } + + // label - computed: false, optional: true, required: false + private _label?: string; + public get label() { + return this.getStringAttribute('label'); + } + public set label(value: string) { + this._label = value; + } + public resetLabel() { + this._label = undefined; + } + // Temporarily expose input value. Use with caution. + public get labelInput() { + return this._label; + } + + // link - computed: false, optional: true, required: false + private _link?: string; + public get link() { + return this.getStringAttribute('link'); + } + public set link(value: string) { + this._link = value; + } + public resetLink() { + this._link = undefined; + } + // Temporarily expose input value. Use with caution. + public get linkInput() { + return this._link; + } + + // override_label - computed: false, optional: true, required: false + private _overrideLabel?: string; + public get overrideLabel() { + return this.getStringAttribute('override_label'); + } + public set overrideLabel(value: string) { + this._overrideLabel = value; + } + public resetOverrideLabel() { + this._overrideLabel = undefined; + } + // Temporarily expose input value. Use with caution. + public get overrideLabelInput() { + return this._overrideLabel; + } +} + +export class DashboardWidgetToplistDefinitionCustomLinkList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetToplistDefinitionCustomLink[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetToplistDefinitionCustomLinkOutputReference { + return new DashboardWidgetToplistDefinitionCustomLinkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} + +export function dashboardWidgetToplistDefinitionRequestApmQueryComputeQueryToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference | DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetToplistDefinitionRequestApmQueryComputeQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryComputeQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} +export interface DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Widget sorting methods. Valid values are `asc`, `desc`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#order Dashboard#order} + */ + readonly order: string; +} + +export function dashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference | DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + order: cdktf.stringToTerraform(struct!.order), + } +} + +export class DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string) { + super(terraformResource, terraformAttribute, false, 0); + } + + public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._order !== undefined) { + hasAnyValues = true; + internalValueResult.order = this._order; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this._aggregation = undefined; + this._facet = undefined; + this._order = undefined; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._order = value.order; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // order - computed: false, optional: false, required: true + private _order?: string; + public get order() { + return this.getStringAttribute('order'); + } + public set order(value: string) { + this._order = value; + } + // Temporarily expose input value. Use with caution. + public get orderInput() { + return this._order; + } +} +export interface DashboardWidgetToplistDefinitionRequestApmQueryGroupBy { + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * The maximum number of items in the group. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#limit Dashboard#limit} + */ + readonly limit?: number; + /** + * sort_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sort_query Dashboard#sort_query} + */ + readonly sortQuery?: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery; +} + +export function dashboardWidgetToplistDefinitionRequestApmQueryGroupByToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + facet: cdktf.stringToTerraform(struct!.facet), + limit: cdktf.numberToTerraform(struct!.limit), + sort_query: dashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryToTerraform(struct!.sortQuery), + } +} + +export class DashboardWidgetToplistDefinitionRequestApmQueryGroupByOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._limit !== undefined) { + hasAnyValues = true; + internalValueResult.limit = this._limit; + } + if (this._sortQuery?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sortQuery = this._sortQuery?.internalValue; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryGroupBy | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._facet = undefined; + this._limit = undefined; + this._sortQuery.internalValue = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._facet = value.facet; + this._limit = value.limit; + this._sortQuery.internalValue = value.sortQuery; + } + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // limit - computed: false, optional: true, required: false + private _limit?: number; + public get limit() { + return this.getNumberAttribute('limit'); + } + public set limit(value: number) { + this._limit = value; + } + public resetLimit() { + this._limit = undefined; + } + // Temporarily expose input value. Use with caution. + public get limitInput() { + return this._limit; + } + + // sort_query - computed: false, optional: true, required: false + private _sortQuery = new DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQueryOutputReference(this, "sort_query"); + public get sortQuery() { + return this._sortQuery; + } + public putSortQuery(value: DashboardWidgetToplistDefinitionRequestApmQueryGroupBySortQuery) { + this._sortQuery.internalValue = value; + } + public resetSortQuery() { + this._sortQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sortQueryInput() { + return this._sortQuery.internalValue; + } +} + +export class DashboardWidgetToplistDefinitionRequestApmQueryGroupByList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetToplistDefinitionRequestApmQueryGroupBy[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetToplistDefinitionRequestApmQueryGroupByOutputReference { + return new DashboardWidgetToplistDefinitionRequestApmQueryGroupByOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} +export interface DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute { + /** + * The aggregation method. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#aggregation Dashboard#aggregation} + */ + readonly aggregation: string; + /** + * The facet name. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#facet Dashboard#facet} + */ + readonly facet?: string; + /** + * Define the time interval in seconds. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#interval Dashboard#interval} + */ + readonly interval?: number; +} + +export function dashboardWidgetToplistDefinitionRequestApmQueryMultiComputeToTerraform(struct?: DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + facet: cdktf.stringToTerraform(struct!.facet), + interval: cdktf.numberToTerraform(struct!.interval), + } +} + +export class DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._facet !== undefined) { + hasAnyValues = true; + internalValueResult.facet = this._facet; + } + if (this._interval !== undefined) { + hasAnyValues = true; + internalValueResult.interval = this._interval; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._facet = undefined; + this._interval = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._facet = value.facet; + this._interval = value.interval; + } + } + + // aggregation - computed: false, optional: false, required: true + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // facet - computed: false, optional: true, required: false + private _facet?: string; + public get facet() { + return this.getStringAttribute('facet'); + } + public set facet(value: string) { + this._facet = value; + } + public resetFacet() { + this._facet = undefined; + } + // Temporarily expose input value. Use with caution. + public get facetInput() { + return this._facet; + } + + // interval - computed: false, optional: true, required: false + private _interval?: number; + public get interval() { + return this.getNumberAttribute('interval'); + } + public set interval(value: number) { + this._interval = value; + } + public resetInterval() { + this._interval = undefined; + } + // Temporarily expose input value. Use with caution. + public get intervalInput() { + return this._interval; + } +} + +export class DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeList extends cdktf.ComplexList { + public internalValue? : DashboardWidgetToplistDefinitionRequestApmQueryMultiCompute[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference { + return new DashboardWidgetToplistDefinitionRequestApmQueryMultiComputeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} export interface DashboardWidgetToplistDefinitionRequestApmQuery { /** * The name of the index to query. @@ -3967,6 +5155,12 @@ export interface DashboardWidgetToplistDefinitionRequestQueryEventQuery { */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -3995,6 +5189,7 @@ export function dashboardWidgetToplistDefinitionRequestQueryEventQueryToTerrafor data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetToplistDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetToplistDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetToplistDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -4027,6 +5222,10 @@ export class DashboardWidgetToplistDefinitionRequestQueryEventQueryOutputReferen hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -4048,6 +5247,7 @@ export class DashboardWidgetToplistDefinitionRequestQueryEventQueryOutputReferen this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -4057,6 +5257,7 @@ export class DashboardWidgetToplistDefinitionRequestQueryEventQueryOutputReferen this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -4105,6 +5306,22 @@ export class DashboardWidgetToplistDefinitionRequestQueryEventQueryOutputReferen return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetToplistDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { @@ -9802,6 +11019,12 @@ export interface DashboardWidgetTreemapDefinitionRequestQueryEventQuery { */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -9830,6 +11053,7 @@ export function dashboardWidgetTreemapDefinitionRequestQueryEventQueryToTerrafor data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetTreemapDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetTreemapDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetTreemapDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -9862,6 +11086,10 @@ export class DashboardWidgetTreemapDefinitionRequestQueryEventQueryOutputReferen hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -9883,6 +11111,7 @@ export class DashboardWidgetTreemapDefinitionRequestQueryEventQueryOutputReferen this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -9892,6 +11121,7 @@ export class DashboardWidgetTreemapDefinitionRequestQueryEventQueryOutputReferen this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -9940,6 +11170,22 @@ export class DashboardWidgetTreemapDefinitionRequestQueryEventQueryOutputReferen return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetTreemapDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { @@ -11173,6 +12419,12 @@ export interface DashboardWidget { */ readonly servicemapDefinition?: DashboardWidgetServicemapDefinition; /** + * slo_list_definition block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#slo_list_definition Dashboard#slo_list_definition} + */ + readonly sloListDefinition?: DashboardWidgetSloListDefinition; + /** * sunburst_definition block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#sunburst_definition Dashboard#sunburst_definition} @@ -11245,6 +12497,7 @@ export function dashboardWidgetToTerraform(struct?: DashboardWidget | cdktf.IRes scatterplot_definition: dashboardWidgetScatterplotDefinitionToTerraform(struct!.scatterplotDefinition), service_level_objective_definition: dashboardWidgetServiceLevelObjectiveDefinitionToTerraform(struct!.serviceLevelObjectiveDefinition), servicemap_definition: dashboardWidgetServicemapDefinitionToTerraform(struct!.servicemapDefinition), + slo_list_definition: dashboardWidgetSloListDefinitionToTerraform(struct!.sloListDefinition), sunburst_definition: dashboardWidgetSunburstDefinitionToTerraform(struct!.sunburstDefinition), timeseries_definition: dashboardWidgetTimeseriesDefinitionToTerraform(struct!.timeseriesDefinition), toplist_definition: dashboardWidgetToplistDefinitionToTerraform(struct!.toplistDefinition), @@ -11367,6 +12620,10 @@ export class DashboardWidgetOutputReference extends cdktf.ComplexObject { hasAnyValues = true; internalValueResult.servicemapDefinition = this._servicemapDefinition?.internalValue; } + if (this._sloListDefinition?.internalValue !== undefined) { + hasAnyValues = true; + internalValueResult.sloListDefinition = this._sloListDefinition?.internalValue; + } if (this._sunburstDefinition?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sunburstDefinition = this._sunburstDefinition?.internalValue; @@ -11425,6 +12682,7 @@ export class DashboardWidgetOutputReference extends cdktf.ComplexObject { this._scatterplotDefinition.internalValue = undefined; this._serviceLevelObjectiveDefinition.internalValue = undefined; this._servicemapDefinition.internalValue = undefined; + this._sloListDefinition.internalValue = undefined; this._sunburstDefinition.internalValue = undefined; this._timeseriesDefinition.internalValue = undefined; this._toplistDefinition.internalValue = undefined; @@ -11463,6 +12721,7 @@ export class DashboardWidgetOutputReference extends cdktf.ComplexObject { this._scatterplotDefinition.internalValue = value.scatterplotDefinition; this._serviceLevelObjectiveDefinition.internalValue = value.serviceLevelObjectiveDefinition; this._servicemapDefinition.internalValue = value.servicemapDefinition; + this._sloListDefinition.internalValue = value.sloListDefinition; this._sunburstDefinition.internalValue = value.sunburstDefinition; this._timeseriesDefinition.internalValue = value.timeseriesDefinition; this._toplistDefinition.internalValue = value.toplistDefinition; @@ -11846,6 +13105,22 @@ export class DashboardWidgetOutputReference extends cdktf.ComplexObject { return this._servicemapDefinition.internalValue; } + // slo_list_definition - computed: false, optional: true, required: false + private _sloListDefinition = new DashboardWidgetSloListDefinitionOutputReference(this, "slo_list_definition"); + public get sloListDefinition() { + return this._sloListDefinition; + } + public putSloListDefinition(value: DashboardWidgetSloListDefinition) { + this._sloListDefinition.internalValue = value; + } + public resetSloListDefinition() { + this._sloListDefinition.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get sloListDefinitionInput() { + return this._sloListDefinition.internalValue; + } + // sunburst_definition - computed: false, optional: true, required: false private _sunburstDefinition = new DashboardWidgetSunburstDefinitionOutputReference(this, "sunburst_definition"); public get sunburstDefinition() { diff --git a/src/dashboard/index-structs/structs400.ts b/src/dashboard/index-structs/structs400.ts index 0d8491b62..97fd9bf9c 100644 --- a/src/dashboard/index-structs/structs400.ts +++ b/src/dashboard/index-structs/structs400.ts @@ -844,6 +844,12 @@ export interface DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQuer */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -872,6 +878,7 @@ export function dashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQuery data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -904,6 +911,10 @@ export class DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEve hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -925,6 +936,7 @@ export class DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEve this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -934,6 +946,7 @@ export class DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEve this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -982,6 +995,22 @@ export class DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEve return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetGroupDefinitionWidgetChangeDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { @@ -11503,6 +11532,12 @@ export interface DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQuer */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -11531,6 +11566,7 @@ export function dashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQuery data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -11563,6 +11599,10 @@ export class DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEve hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -11584,6 +11624,7 @@ export class DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEve this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -11593,6 +11634,7 @@ export class DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEve this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -11641,6 +11683,22 @@ export class DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEve return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetGroupDefinitionWidgetGeomapDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { diff --git a/src/dashboard/index-structs/structs800.ts b/src/dashboard/index-structs/structs800.ts index b4ffa7c47..343aa104c 100644 --- a/src/dashboard/index-structs/structs800.ts +++ b/src/dashboard/index-structs/structs800.ts @@ -6121,6 +6121,12 @@ export interface DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequest * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#query_string Dashboard#query_string} */ readonly queryString?: string; + /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; } export function dashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQueryToTerraform(struct?: DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQueryOutputReference | DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQuery): any { @@ -6132,6 +6138,7 @@ export function dashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQ data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), query_string: cdktf.stringToTerraform(struct!.queryString), + storage: cdktf.stringToTerraform(struct!.storage), } } @@ -6161,6 +6168,10 @@ export class DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQuer hasAnyValues = true; internalValueResult.queryString = this._queryString; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } return hasAnyValues ? internalValueResult : undefined; } @@ -6170,12 +6181,14 @@ export class DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQuer this._dataSource = undefined; this._indexes = undefined; this._queryString = undefined; + this._storage = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._dataSource = value.dataSource; this._indexes = value.indexes; this._queryString = value.queryString; + this._storage = value.storage; } } @@ -6223,6 +6236,22 @@ export class DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequestQuer public get queryStringInput() { return this._queryString; } + + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } } export interface DashboardWidgetGroupDefinitionWidgetListStreamDefinitionRequest { /** @@ -11916,6 +11945,12 @@ export interface DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequest */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -11944,6 +11979,7 @@ export function dashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQ data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -11976,6 +12012,10 @@ export class DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQuer hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -11997,6 +12037,7 @@ export class DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQuer this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -12006,6 +12047,7 @@ export class DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQuer this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -12054,6 +12096,22 @@ export class DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQuer return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetGroupDefinitionWidgetQueryTableDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { @@ -19581,6 +19639,12 @@ export interface DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequest */ readonly name: string; /** + * Storage location (private beta). + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#storage Dashboard#storage} + */ + readonly storage?: string; + /** * compute block * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/dashboard#compute Dashboard#compute} @@ -19609,6 +19673,7 @@ export function dashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQ data_source: cdktf.stringToTerraform(struct!.dataSource), indexes: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.indexes), name: cdktf.stringToTerraform(struct!.name), + storage: cdktf.stringToTerraform(struct!.storage), compute: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryComputeToTerraform, true)(struct!.compute), group_by: cdktf.listMapper(dashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryGroupByToTerraform, true)(struct!.groupBy), search: dashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQuerySearchToTerraform(struct!.search), @@ -19641,6 +19706,10 @@ export class DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQuer hasAnyValues = true; internalValueResult.name = this._name; } + if (this._storage !== undefined) { + hasAnyValues = true; + internalValueResult.storage = this._storage; + } if (this._compute?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.compute = this._compute?.internalValue; @@ -19662,6 +19731,7 @@ export class DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQuer this._dataSource = undefined; this._indexes = undefined; this._name = undefined; + this._storage = undefined; this._compute.internalValue = undefined; this._groupBy.internalValue = undefined; this._search.internalValue = undefined; @@ -19671,6 +19741,7 @@ export class DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQuer this._dataSource = value.dataSource; this._indexes = value.indexes; this._name = value.name; + this._storage = value.storage; this._compute.internalValue = value.compute; this._groupBy.internalValue = value.groupBy; this._search.internalValue = value.search; @@ -19719,6 +19790,22 @@ export class DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQuer return this._name; } + // storage - computed: false, optional: true, required: false + private _storage?: string; + public get storage() { + return this.getStringAttribute('storage'); + } + public set storage(value: string) { + this._storage = value; + } + public resetStorage() { + this._storage = undefined; + } + // Temporarily expose input value. Use with caution. + public get storageInput() { + return this._storage; + } + // compute - computed: false, optional: false, required: true private _compute = new DashboardWidgetGroupDefinitionWidgetQueryValueDefinitionRequestQueryEventQueryComputeList(this, "compute", false); public get compute() { diff --git a/src/dashboard/index.ts b/src/dashboard/index.ts index a12a77b53..171a22912 100644 --- a/src/dashboard/index.ts +++ b/src/dashboard/index.ts @@ -120,7 +120,7 @@ export class Dashboard extends cdktf.TerraformResource { terraformResourceType: 'datadog_dashboard', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-api-key/index.ts b/src/data-datadog-api-key/index.ts index 1f30cc958..c3b0ade42 100644 --- a/src/data-datadog-api-key/index.ts +++ b/src/data-datadog-api-key/index.ts @@ -50,7 +50,7 @@ export class DataDatadogApiKey extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_api_key', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-application-key/index.ts b/src/data-datadog-application-key/index.ts index be6d122b0..e7802af45 100644 --- a/src/data-datadog-application-key/index.ts +++ b/src/data-datadog-application-key/index.ts @@ -50,7 +50,7 @@ export class DataDatadogApplicationKey extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_application_key', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-cloud-workload-security-agent-rules/index.ts b/src/data-datadog-cloud-workload-security-agent-rules/index.ts index 7b4b41363..a29ea4196 100644 --- a/src/data-datadog-cloud-workload-security-agent-rules/index.ts +++ b/src/data-datadog-cloud-workload-security-agent-rules/index.ts @@ -126,7 +126,7 @@ export class DataDatadogCloudWorkloadSecurityAgentRules extends cdktf.TerraformD terraformResourceType: 'datadog_cloud_workload_security_agent_rules', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-dashboard-list/index.ts b/src/data-datadog-dashboard-list/index.ts index 40ca8e9d5..64e40eb3a 100644 --- a/src/data-datadog-dashboard-list/index.ts +++ b/src/data-datadog-dashboard-list/index.ts @@ -48,7 +48,7 @@ export class DataDatadogDashboardList extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_dashboard_list', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-dashboard/index.ts b/src/data-datadog-dashboard/index.ts index 4759b5062..6d51ead7d 100644 --- a/src/data-datadog-dashboard/index.ts +++ b/src/data-datadog-dashboard/index.ts @@ -48,7 +48,7 @@ export class DataDatadogDashboard extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_dashboard', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-ip-ranges/index.ts b/src/data-datadog-ip-ranges/index.ts index ee713acf3..f9bc78141 100644 --- a/src/data-datadog-ip-ranges/index.ts +++ b/src/data-datadog-ip-ranges/index.ts @@ -42,7 +42,7 @@ export class DataDatadogIpRanges extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_ip_ranges', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-logs-indexes-order/index.ts b/src/data-datadog-logs-indexes-order/index.ts index d5a273073..918c167b6 100644 --- a/src/data-datadog-logs-indexes-order/index.ts +++ b/src/data-datadog-logs-indexes-order/index.ts @@ -42,7 +42,7 @@ export class DataDatadogLogsIndexesOrder extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_logs_indexes_order', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-logs-indexes/index.ts b/src/data-datadog-logs-indexes/index.ts index beefe82db..5997f02c1 100644 --- a/src/data-datadog-logs-indexes/index.ts +++ b/src/data-datadog-logs-indexes/index.ts @@ -336,7 +336,7 @@ export class DataDatadogLogsIndexes extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_logs_indexes', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-logs-pipelines/index.ts b/src/data-datadog-logs-pipelines/index.ts index ea191c758..596ff5b20 100644 --- a/src/data-datadog-logs-pipelines/index.ts +++ b/src/data-datadog-logs-pipelines/index.ts @@ -202,7 +202,7 @@ export class DataDatadogLogsPipelines extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_logs_pipelines', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-monitor/index.ts b/src/data-datadog-monitor/index.ts index cfc81ea9a..18150cdcb 100644 --- a/src/data-datadog-monitor/index.ts +++ b/src/data-datadog-monitor/index.ts @@ -218,7 +218,7 @@ export class DataDatadogMonitor extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_monitor', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, @@ -364,6 +364,11 @@ export class DataDatadogMonitor extends cdktf.TerraformDataSource { return this.getBooleanAttribute('notify_audit'); } + // notify_by - computed: true, optional: false, required: false + public get notifyBy() { + return cdktf.Fn.tolist(this.getListAttribute('notify_by')); + } + // notify_no_data - computed: true, optional: false, required: false public get notifyNoData() { return this.getBooleanAttribute('notify_no_data'); diff --git a/src/data-datadog-monitors/index.ts b/src/data-datadog-monitors/index.ts index 58e063bec..d2cc6e5c3 100644 --- a/src/data-datadog-monitors/index.ts +++ b/src/data-datadog-monitors/index.ts @@ -134,7 +134,7 @@ export class DataDatadogMonitors extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_monitors', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-permissions/index.ts b/src/data-datadog-permissions/index.ts index 0a78bbc19..1aceda0eb 100644 --- a/src/data-datadog-permissions/index.ts +++ b/src/data-datadog-permissions/index.ts @@ -42,7 +42,7 @@ export class DataDatadogPermissions extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_permissions', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-role/index.ts b/src/data-datadog-role/index.ts index 582f9450a..294e73ab1 100644 --- a/src/data-datadog-role/index.ts +++ b/src/data-datadog-role/index.ts @@ -48,7 +48,7 @@ export class DataDatadogRole extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_role', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-roles/index.ts b/src/data-datadog-roles/index.ts index 40affa9ea..821ff830a 100644 --- a/src/data-datadog-roles/index.ts +++ b/src/data-datadog-roles/index.ts @@ -122,7 +122,7 @@ export class DataDatadogRoles extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_roles', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-security-monitoring-filters/index.ts b/src/data-datadog-security-monitoring-filters/index.ts index d41119fa6..11c892ff2 100644 --- a/src/data-datadog-security-monitoring-filters/index.ts +++ b/src/data-datadog-security-monitoring-filters/index.ts @@ -201,7 +201,7 @@ export class DataDatadogSecurityMonitoringFilters extends cdktf.TerraformDataSou terraformResourceType: 'datadog_security_monitoring_filters', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-security-monitoring-rules/index.ts b/src/data-datadog-security-monitoring-rules/index.ts index 9f5bf8644..d7129623a 100644 --- a/src/data-datadog-security-monitoring-rules/index.ts +++ b/src/data-datadog-security-monitoring-rules/index.ts @@ -595,6 +595,95 @@ export class DataDatadogSecurityMonitoringRulesRulesQueryList extends cdktf.Comp return new DataDatadogSecurityMonitoringRulesRulesQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } +export interface DataDatadogSecurityMonitoringRulesRulesSignalQuery { +} + +export function dataDatadogSecurityMonitoringRulesRulesSignalQueryToTerraform(struct?: DataDatadogSecurityMonitoringRulesRulesSignalQuery): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + } +} + +export class DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): DataDatadogSecurityMonitoringRulesRulesSignalQuery | undefined { + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: DataDatadogSecurityMonitoringRulesRulesSignalQuery | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + } + } + + // aggregation - computed: true, optional: false, required: false + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + + // correlated_by_fields - computed: true, optional: false, required: false + public get correlatedByFields() { + return this.getListAttribute('correlated_by_fields'); + } + + // correlated_query_index - computed: true, optional: false, required: false + public get correlatedQueryIndex() { + return this.getStringAttribute('correlated_query_index'); + } + + // default_rule_id - computed: true, optional: false, required: false + public get defaultRuleId() { + return this.getStringAttribute('default_rule_id'); + } + + // name - computed: true, optional: false, required: false + public get name() { + return this.getStringAttribute('name'); + } + + // rule_id - computed: true, optional: false, required: false + public get ruleId() { + return this.getStringAttribute('rule_id'); + } +} + +export class DataDatadogSecurityMonitoringRulesRulesSignalQueryList extends cdktf.ComplexList { + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference { + return new DataDatadogSecurityMonitoringRulesRulesSignalQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} export interface DataDatadogSecurityMonitoringRulesRules { } @@ -679,6 +768,12 @@ export class DataDatadogSecurityMonitoringRulesRulesOutputReference extends cdkt return this._query; } + // signal_query - computed: true, optional: false, required: false + private _signalQuery = new DataDatadogSecurityMonitoringRulesRulesSignalQueryList(this, "signal_query", false); + public get signalQuery() { + return this._signalQuery; + } + // tags - computed: true, optional: false, required: false public get tags() { return this.getListAttribute('tags'); @@ -735,7 +830,7 @@ export class DataDatadogSecurityMonitoringRules extends cdktf.TerraformDataSourc terraformResourceType: 'datadog_security_monitoring_rules', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-service-level-objective/index.ts b/src/data-datadog-service-level-objective/index.ts index 0ae385333..aa3d22eda 100644 --- a/src/data-datadog-service-level-objective/index.ts +++ b/src/data-datadog-service-level-objective/index.ts @@ -62,7 +62,7 @@ export class DataDatadogServiceLevelObjective extends cdktf.TerraformDataSource terraformResourceType: 'datadog_service_level_objective', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-service-level-objectives/index.ts b/src/data-datadog-service-level-objectives/index.ts index 6a36fb869..7a4e71028 100644 --- a/src/data-datadog-service-level-objectives/index.ts +++ b/src/data-datadog-service-level-objectives/index.ts @@ -140,7 +140,7 @@ export class DataDatadogServiceLevelObjectives extends cdktf.TerraformDataSource terraformResourceType: 'datadog_service_level_objectives', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-synthetics-global-variable/index.ts b/src/data-datadog-synthetics-global-variable/index.ts index 78c223375..8893f06aa 100644 --- a/src/data-datadog-synthetics-global-variable/index.ts +++ b/src/data-datadog-synthetics-global-variable/index.ts @@ -48,7 +48,7 @@ export class DataDatadogSyntheticsGlobalVariable extends cdktf.TerraformDataSour terraformResourceType: 'datadog_synthetics_global_variable', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-synthetics-locations/index.ts b/src/data-datadog-synthetics-locations/index.ts index 7c25fee0a..d07013269 100644 --- a/src/data-datadog-synthetics-locations/index.ts +++ b/src/data-datadog-synthetics-locations/index.ts @@ -42,7 +42,7 @@ export class DataDatadogSyntheticsLocations extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_synthetics_locations', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-synthetics-test/index.ts b/src/data-datadog-synthetics-test/index.ts index 7bdbd1408..d5c023a6a 100644 --- a/src/data-datadog-synthetics-test/index.ts +++ b/src/data-datadog-synthetics-test/index.ts @@ -48,7 +48,7 @@ export class DataDatadogSyntheticsTest extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_synthetics_test', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/data-datadog-user/index.ts b/src/data-datadog-user/index.ts index 989b80044..81d8c6136 100644 --- a/src/data-datadog-user/index.ts +++ b/src/data-datadog-user/index.ts @@ -48,7 +48,7 @@ export class DataDatadogUser extends cdktf.TerraformDataSource { terraformResourceType: 'datadog_user', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/downtime/index.ts b/src/downtime/index.ts index 54614d04d..d325bfda0 100644 --- a/src/downtime/index.ts +++ b/src/downtime/index.ts @@ -317,7 +317,7 @@ export class Downtime extends cdktf.TerraformResource { terraformResourceType: 'datadog_downtime', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-aws-lambda-arn/index.ts b/src/integration-aws-lambda-arn/index.ts index fe1ea28fd..68455410f 100644 --- a/src/integration-aws-lambda-arn/index.ts +++ b/src/integration-aws-lambda-arn/index.ts @@ -54,7 +54,7 @@ export class IntegrationAwsLambdaArn extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_aws_lambda_arn', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-aws-log-collection/index.ts b/src/integration-aws-log-collection/index.ts index 56caf51ef..b4dd5d19b 100644 --- a/src/integration-aws-log-collection/index.ts +++ b/src/integration-aws-log-collection/index.ts @@ -54,7 +54,7 @@ export class IntegrationAwsLogCollection extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_aws_log_collection', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-aws-tag-filter/index.ts b/src/integration-aws-tag-filter/index.ts index 634e56703..e9f5f2a3a 100644 --- a/src/integration-aws-tag-filter/index.ts +++ b/src/integration-aws-tag-filter/index.ts @@ -60,7 +60,7 @@ export class IntegrationAwsTagFilter extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_aws_tag_filter', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-aws/index.ts b/src/integration-aws/index.ts index 9a04735df..c9e8f27d4 100644 --- a/src/integration-aws/index.ts +++ b/src/integration-aws/index.ts @@ -108,7 +108,7 @@ export class IntegrationAws extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_aws', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-azure/index.ts b/src/integration-azure/index.ts index 2138c9608..70e1a3e6a 100644 --- a/src/integration-azure/index.ts +++ b/src/integration-azure/index.ts @@ -72,7 +72,7 @@ export class IntegrationAzure extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_azure', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-gcp/index.ts b/src/integration-gcp/index.ts index 9b75b40f1..b17dcea51 100644 --- a/src/integration-gcp/index.ts +++ b/src/integration-gcp/index.ts @@ -84,7 +84,7 @@ export class IntegrationGcp extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_gcp', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-opsgenie-service-object/index.ts b/src/integration-opsgenie-service-object/index.ts index b5b5b8d08..8b55f169f 100644 --- a/src/integration-opsgenie-service-object/index.ts +++ b/src/integration-opsgenie-service-object/index.ts @@ -66,7 +66,7 @@ export class IntegrationOpsgenieServiceObject extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_opsgenie_service_object', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-pagerduty-service-object/index.ts b/src/integration-pagerduty-service-object/index.ts index ac23e9b46..46dcb92d2 100644 --- a/src/integration-pagerduty-service-object/index.ts +++ b/src/integration-pagerduty-service-object/index.ts @@ -54,7 +54,7 @@ export class IntegrationPagerdutyServiceObject extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_pagerduty_service_object', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-pagerduty/index.ts b/src/integration-pagerduty/index.ts index 2522680a2..287f8c3f1 100644 --- a/src/integration-pagerduty/index.ts +++ b/src/integration-pagerduty/index.ts @@ -60,7 +60,7 @@ export class IntegrationPagerduty extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_pagerduty', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/integration-slack-channel/index.ts b/src/integration-slack-channel/index.ts index 3ac9fd6e4..b1833791f 100644 --- a/src/integration-slack-channel/index.ts +++ b/src/integration-slack-channel/index.ts @@ -214,7 +214,7 @@ export class IntegrationSlackChannel extends cdktf.TerraformResource { terraformResourceType: 'datadog_integration_slack_channel', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-archive-order/index.ts b/src/logs-archive-order/index.ts index ae1c28add..68d90db99 100644 --- a/src/logs-archive-order/index.ts +++ b/src/logs-archive-order/index.ts @@ -48,7 +48,7 @@ export class LogsArchiveOrder extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_archive_order', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-archive/index.ts b/src/logs-archive/index.ts index 8e4909db7..703559040 100644 --- a/src/logs-archive/index.ts +++ b/src/logs-archive/index.ts @@ -545,7 +545,7 @@ export class LogsArchive extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_archive', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-custom-pipeline/index.ts b/src/logs-custom-pipeline/index.ts index e43c9f059..0f8d0fd49 100644 --- a/src/logs-custom-pipeline/index.ts +++ b/src/logs-custom-pipeline/index.ts @@ -6489,7 +6489,7 @@ export class LogsCustomPipeline extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_custom_pipeline', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-index-order/index.ts b/src/logs-index-order/index.ts index 431c4fbb1..2aa099311 100644 --- a/src/logs-index-order/index.ts +++ b/src/logs-index-order/index.ts @@ -54,7 +54,7 @@ export class LogsIndexOrder extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_index_order', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-index/index.ts b/src/logs-index/index.ts index 3c45102d5..71d917108 100644 --- a/src/logs-index/index.ts +++ b/src/logs-index/index.ts @@ -427,7 +427,7 @@ export class LogsIndex extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_index', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-integration-pipeline/index.ts b/src/logs-integration-pipeline/index.ts index eb2c08b78..77dfeb8d4 100644 --- a/src/logs-integration-pipeline/index.ts +++ b/src/logs-integration-pipeline/index.ts @@ -48,7 +48,7 @@ export class LogsIntegrationPipeline extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_integration_pipeline', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-metric/index.ts b/src/logs-metric/index.ts index 99953a201..57114ddf8 100644 --- a/src/logs-metric/index.ts +++ b/src/logs-metric/index.ts @@ -345,7 +345,7 @@ export class LogsMetric extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_metric', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/logs-pipeline-order/index.ts b/src/logs-pipeline-order/index.ts index 009442194..d2ce9639e 100644 --- a/src/logs-pipeline-order/index.ts +++ b/src/logs-pipeline-order/index.ts @@ -54,7 +54,7 @@ export class LogsPipelineOrder extends cdktf.TerraformResource { terraformResourceType: 'datadog_logs_pipeline_order', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/metric-metadata/index.ts b/src/metric-metadata/index.ts index 5601d121b..33c3fe7e9 100644 --- a/src/metric-metadata/index.ts +++ b/src/metric-metadata/index.ts @@ -84,7 +84,7 @@ export class MetricMetadata extends cdktf.TerraformResource { terraformResourceType: 'datadog_metric_metadata', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/metric-tag-configuration/index.ts b/src/metric-tag-configuration/index.ts index eca353760..51ad38090 100644 --- a/src/metric-tag-configuration/index.ts +++ b/src/metric-tag-configuration/index.ts @@ -194,7 +194,7 @@ export class MetricTagConfiguration extends cdktf.TerraformResource { terraformResourceType: 'datadog_metric_tag_configuration', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/monitor-json/index.ts b/src/monitor-json/index.ts index 5d7aba7da..31f0085f6 100644 --- a/src/monitor-json/index.ts +++ b/src/monitor-json/index.ts @@ -54,7 +54,7 @@ export class MonitorJson extends cdktf.TerraformResource { terraformResourceType: 'datadog_monitor_json', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/monitor/index.ts b/src/monitor/index.ts index c57dde147..c22595efe 100644 --- a/src/monitor/index.ts +++ b/src/monitor/index.ts @@ -107,6 +107,12 @@ We recommend at least 2x the monitor timeframe for metric alerts or 2 minutes fo */ readonly notifyAudit?: boolean | cdktf.IResolvable; /** + * Controls what granularity a monitor alerts on. Only available for monitors with groupings. For instance, a monitor grouped by `cluster`, `namespace`, and `pod` can be configured to only notify on each new `cluster` violating the alert conditions by setting `notify_by` to `['cluster']`. Tags mentioned in `notify_by` must be a subset of the grouping tags in the query. For example, a query grouped by `cluster` and `namespace` cannot notify on `region`. Setting `notify_by` to `[*]` configures the monitor to notify as a simple-alert. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/monitor#notify_by Monitor#notify_by} + */ + readonly notifyBy?: string[]; + /** * A boolean indicating whether this monitor will notify when data stops reporting. Defaults to `false`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/monitor#notify_no_data Monitor#notify_no_data} @@ -1338,7 +1344,7 @@ export class Monitor extends cdktf.TerraformResource { terraformResourceType: 'datadog_monitor', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, @@ -1364,6 +1370,7 @@ export class Monitor extends cdktf.TerraformResource { this._newHostDelay = config.newHostDelay; this._noDataTimeframe = config.noDataTimeframe; this._notifyAudit = config.notifyAudit; + this._notifyBy = config.notifyBy; this._notifyNoData = config.notifyNoData; this._onMissingData = config.onMissingData; this._priority = config.priority; @@ -1620,6 +1627,22 @@ export class Monitor extends cdktf.TerraformResource { return this._notifyAudit; } + // notify_by - computed: false, optional: true, required: false + private _notifyBy?: string[]; + public get notifyBy() { + return cdktf.Fn.tolist(this.getListAttribute('notify_by')); + } + public set notifyBy(value: string[]) { + this._notifyBy = value; + } + public resetNotifyBy() { + this._notifyBy = undefined; + } + // Temporarily expose input value. Use with caution. + public get notifyByInput() { + return this._notifyBy; + } + // notify_no_data - computed: false, optional: true, required: false private _notifyNoData?: boolean | cdktf.IResolvable; public get notifyNoData() { @@ -1891,6 +1914,7 @@ export class Monitor extends cdktf.TerraformResource { new_host_delay: cdktf.numberToTerraform(this._newHostDelay), no_data_timeframe: cdktf.numberToTerraform(this._noDataTimeframe), notify_audit: cdktf.booleanToTerraform(this._notifyAudit), + notify_by: cdktf.listMapper(cdktf.stringToTerraform, false)(this._notifyBy), notify_no_data: cdktf.booleanToTerraform(this._notifyNoData), on_missing_data: cdktf.stringToTerraform(this._onMissingData), priority: cdktf.numberToTerraform(this._priority), diff --git a/src/organization-settings/index.ts b/src/organization-settings/index.ts index 4726a4cbd..ca698d2bf 100644 --- a/src/organization-settings/index.ts +++ b/src/organization-settings/index.ts @@ -571,7 +571,7 @@ export class OrganizationSettings extends cdktf.TerraformResource { terraformResourceType: 'datadog_organization_settings', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/provider/index.ts b/src/provider/index.ts index e29ccd927..41750b729 100644 --- a/src/provider/index.ts +++ b/src/provider/index.ts @@ -77,7 +77,7 @@ export class DatadogProvider extends cdktf.TerraformProvider { terraformResourceType: 'datadog', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, terraformProviderSource: 'DataDog/datadog' diff --git a/src/role/index.ts b/src/role/index.ts index a8196a64f..aafece0e4 100644 --- a/src/role/index.ts +++ b/src/role/index.ts @@ -158,7 +158,7 @@ export class Role extends cdktf.TerraformResource { terraformResourceType: 'datadog_role', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/rum-application/index.ts b/src/rum-application/index.ts index 28899f1cb..e0f79c975 100644 --- a/src/rum-application/index.ts +++ b/src/rum-application/index.ts @@ -54,7 +54,7 @@ export class RumApplication extends cdktf.TerraformResource { terraformResourceType: 'datadog_rum_application', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/security-monitoring-default-rule/index.ts b/src/security-monitoring-default-rule/index.ts index 161d22f0a..3f0a81000 100644 --- a/src/security-monitoring-default-rule/index.ts +++ b/src/security-monitoring-default-rule/index.ts @@ -377,7 +377,7 @@ export class SecurityMonitoringDefaultRule extends cdktf.TerraformResource { terraformResourceType: 'datadog_security_monitoring_default_rule', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/security-monitoring-filter/index.ts b/src/security-monitoring-filter/index.ts index 8ce154fec..a22b839ef 100644 --- a/src/security-monitoring-filter/index.ts +++ b/src/security-monitoring-filter/index.ts @@ -194,7 +194,7 @@ export class SecurityMonitoringFilter extends cdktf.TerraformResource { terraformResourceType: 'datadog_security_monitoring_filter', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/security-monitoring-rule/index.ts b/src/security-monitoring-rule/index.ts index ba49b41c8..7199aff30 100644 --- a/src/security-monitoring-rule/index.ts +++ b/src/security-monitoring-rule/index.ts @@ -45,7 +45,7 @@ export interface SecurityMonitoringRuleConfig extends cdktf.TerraformMetaArgumen */ readonly tags?: string[]; /** - * The rule type. Valid values are `log_detection`, `infrastructure_configuration`, `workload_security`, `cloud_configuration`. + * The rule type. Valid values are `log_detection`, `infrastructure_configuration`, `workload_security`, `cloud_configuration`, `signal_correlation`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#type SecurityMonitoringRule#type} */ @@ -73,7 +73,13 @@ export interface SecurityMonitoringRuleConfig extends cdktf.TerraformMetaArgumen * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#query SecurityMonitoringRule#query} */ - readonly query: SecurityMonitoringRuleQuery[] | cdktf.IResolvable; + readonly query?: SecurityMonitoringRuleQuery[] | cdktf.IResolvable; + /** + * signal_query block + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#signal_query SecurityMonitoringRule#signal_query} + */ + readonly signalQuery?: SecurityMonitoringRuleSignalQuery[] | cdktf.IResolvable; } export interface SecurityMonitoringRuleCase { /** @@ -382,7 +388,7 @@ export class SecurityMonitoringRuleFilterList extends cdktf.ComplexList { } export interface SecurityMonitoringRuleOptionsImpossibleTravelOptions { /** - * If true, signals are suppressed for the first 24 hours. In 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. + * 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. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#baseline_user_locations SecurityMonitoringRule#baseline_user_locations} */ @@ -957,7 +963,7 @@ export class SecurityMonitoringRuleQueryAgentRuleList extends cdktf.ComplexList } export interface SecurityMonitoringRuleQuery { /** - * The aggregation type. Valid values are `count`, `cardinality`, `sum`, `max`, `new_value`, `geo_data`, `event_count`. + * The aggregation type. For Signal Correlation rules, it must be event_count. Valid values are `count`, `cardinality`, `sum`, `max`, `new_value`, `geo_data`, `event_count`. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#aggregation SecurityMonitoringRule#aggregation} */ @@ -975,13 +981,13 @@ export interface SecurityMonitoringRuleQuery { */ readonly groupByFields?: string[]; /** - * The target field to aggregate over when using the `sum`, `max`, or `new_value` aggregations. + * The target field to aggregate over when using the `sum`, `max`, or `geo_data` aggregations. **Deprecated.** Configure `metrics` instead. This attribute will be removed in the next major version of the provider. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#metric SecurityMonitoringRule#metric} */ readonly metric?: string; /** - * Group of target fields to aggregate over when using the new value aggregations. + * Group of target fields to aggregate over when using the `sum`, `max`, `geo_data`, or `new_value` aggregations. The `sum`, `max`, and `geo_data` aggregations only accept one value in this list, whereas the `new_value` aggregation accepts up to five values. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#metrics SecurityMonitoringRule#metrics} */ @@ -1254,6 +1260,247 @@ export class SecurityMonitoringRuleQueryList extends cdktf.ComplexList { return new SecurityMonitoringRuleQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } +export interface SecurityMonitoringRuleSignalQuery { + /** + * The aggregation type. For Signal Correlation rules, it must be event_count. Valid values are `count`, `cardinality`, `sum`, `max`, `new_value`, `geo_data`, `event_count`. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#aggregation SecurityMonitoringRule#aggregation} + */ + readonly aggregation?: string; + /** + * Fields to correlate by. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#correlated_by_fields SecurityMonitoringRule#correlated_by_fields} + */ + readonly correlatedByFields?: string[]; + /** + * 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. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#correlated_query_index SecurityMonitoringRule#correlated_query_index} + */ + readonly correlatedQueryIndex?: string; + /** + * Default Rule ID of the signal to correlate. This value is READ-ONLY. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#default_rule_id SecurityMonitoringRule#default_rule_id} + */ + readonly defaultRuleId?: string; + /** + * Name of the query. Not compatible with `new_value` aggregations. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#name SecurityMonitoringRule#name} + */ + readonly name?: string; + /** + * Rule ID of the signal to correlate. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule#rule_id SecurityMonitoringRule#rule_id} + */ + readonly ruleId: string; +} + +export function securityMonitoringRuleSignalQueryToTerraform(struct?: SecurityMonitoringRuleSignalQuery | cdktf.IResolvable): any { + if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } + if (cdktf.isComplexElement(struct)) { + throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); + } + return { + aggregation: cdktf.stringToTerraform(struct!.aggregation), + correlated_by_fields: cdktf.listMapper(cdktf.stringToTerraform, false)(struct!.correlatedByFields), + correlated_query_index: cdktf.stringToTerraform(struct!.correlatedQueryIndex), + default_rule_id: cdktf.stringToTerraform(struct!.defaultRuleId), + name: cdktf.stringToTerraform(struct!.name), + rule_id: cdktf.stringToTerraform(struct!.ruleId), + } +} + +export class SecurityMonitoringRuleSignalQueryOutputReference extends cdktf.ComplexObject { + private isEmptyObject = false; + private resolvableValue?: cdktf.IResolvable; + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param complexObjectIndex the index of this item in the list + * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + public constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean) { + super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); + } + + public get internalValue(): SecurityMonitoringRuleSignalQuery | cdktf.IResolvable | undefined { + if (this.resolvableValue) { + return this.resolvableValue; + } + let hasAnyValues = this.isEmptyObject; + const internalValueResult: any = {}; + if (this._aggregation !== undefined) { + hasAnyValues = true; + internalValueResult.aggregation = this._aggregation; + } + if (this._correlatedByFields !== undefined) { + hasAnyValues = true; + internalValueResult.correlatedByFields = this._correlatedByFields; + } + if (this._correlatedQueryIndex !== undefined) { + hasAnyValues = true; + internalValueResult.correlatedQueryIndex = this._correlatedQueryIndex; + } + if (this._defaultRuleId !== undefined) { + hasAnyValues = true; + internalValueResult.defaultRuleId = this._defaultRuleId; + } + if (this._name !== undefined) { + hasAnyValues = true; + internalValueResult.name = this._name; + } + if (this._ruleId !== undefined) { + hasAnyValues = true; + internalValueResult.ruleId = this._ruleId; + } + return hasAnyValues ? internalValueResult : undefined; + } + + public set internalValue(value: SecurityMonitoringRuleSignalQuery | cdktf.IResolvable | undefined) { + if (value === undefined) { + this.isEmptyObject = false; + this.resolvableValue = undefined; + this._aggregation = undefined; + this._correlatedByFields = undefined; + this._correlatedQueryIndex = undefined; + this._defaultRuleId = undefined; + this._name = undefined; + this._ruleId = undefined; + } + else if (cdktf.Tokenization.isResolvable(value)) { + this.isEmptyObject = false; + this.resolvableValue = value; + } + else { + this.isEmptyObject = Object.keys(value).length === 0; + this.resolvableValue = undefined; + this._aggregation = value.aggregation; + this._correlatedByFields = value.correlatedByFields; + this._correlatedQueryIndex = value.correlatedQueryIndex; + this._defaultRuleId = value.defaultRuleId; + this._name = value.name; + this._ruleId = value.ruleId; + } + } + + // aggregation - computed: false, optional: true, required: false + private _aggregation?: string; + public get aggregation() { + return this.getStringAttribute('aggregation'); + } + public set aggregation(value: string) { + this._aggregation = value; + } + public resetAggregation() { + this._aggregation = undefined; + } + // Temporarily expose input value. Use with caution. + public get aggregationInput() { + return this._aggregation; + } + + // correlated_by_fields - computed: false, optional: true, required: false + private _correlatedByFields?: string[]; + public get correlatedByFields() { + return this.getListAttribute('correlated_by_fields'); + } + public set correlatedByFields(value: string[]) { + this._correlatedByFields = value; + } + public resetCorrelatedByFields() { + this._correlatedByFields = undefined; + } + // Temporarily expose input value. Use with caution. + public get correlatedByFieldsInput() { + return this._correlatedByFields; + } + + // correlated_query_index - computed: false, optional: true, required: false + private _correlatedQueryIndex?: string; + public get correlatedQueryIndex() { + return this.getStringAttribute('correlated_query_index'); + } + public set correlatedQueryIndex(value: string) { + this._correlatedQueryIndex = value; + } + public resetCorrelatedQueryIndex() { + this._correlatedQueryIndex = undefined; + } + // Temporarily expose input value. Use with caution. + public get correlatedQueryIndexInput() { + return this._correlatedQueryIndex; + } + + // default_rule_id - computed: false, optional: true, required: false + private _defaultRuleId?: string; + public get defaultRuleId() { + return this.getStringAttribute('default_rule_id'); + } + public set defaultRuleId(value: string) { + this._defaultRuleId = value; + } + public resetDefaultRuleId() { + this._defaultRuleId = undefined; + } + // Temporarily expose input value. Use with caution. + public get defaultRuleIdInput() { + return this._defaultRuleId; + } + + // name - computed: false, optional: true, required: false + private _name?: string; + public get name() { + return this.getStringAttribute('name'); + } + public set name(value: string) { + this._name = value; + } + public resetName() { + this._name = undefined; + } + // Temporarily expose input value. Use with caution. + public get nameInput() { + return this._name; + } + + // rule_id - computed: false, optional: false, required: true + private _ruleId?: string; + public get ruleId() { + return this.getStringAttribute('rule_id'); + } + public set ruleId(value: string) { + this._ruleId = value; + } + // Temporarily expose input value. Use with caution. + public get ruleIdInput() { + return this._ruleId; + } +} + +export class SecurityMonitoringRuleSignalQueryList extends cdktf.ComplexList { + public internalValue? : SecurityMonitoringRuleSignalQuery[] | cdktf.IResolvable + + /** + * @param terraformResource The parent resource + * @param terraformAttribute The attribute on the parent resource this class is referencing + * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) + */ + constructor(protected terraformResource: cdktf.IInterpolatingParent, protected terraformAttribute: string, protected wrapsSet: boolean) { + super(terraformResource, terraformAttribute, wrapsSet) + } + + /** + * @param index the index of the item to return + */ + public get(index: number): SecurityMonitoringRuleSignalQueryOutputReference { + return new SecurityMonitoringRuleSignalQueryOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); + } +} /** * Represents a {@link https://www.terraform.io/docs/providers/datadog/r/security_monitoring_rule datadog_security_monitoring_rule} @@ -1281,7 +1528,7 @@ export class SecurityMonitoringRule extends cdktf.TerraformResource { terraformResourceType: 'datadog_security_monitoring_rule', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, @@ -1303,6 +1550,7 @@ export class SecurityMonitoringRule extends cdktf.TerraformResource { this._filter.internalValue = config.filter; this._options.internalValue = config.options; this._query.internalValue = config.query; + this._signalQuery.internalValue = config.signalQuery; } // ========== @@ -1460,7 +1708,7 @@ export class SecurityMonitoringRule extends cdktf.TerraformResource { return this._options.internalValue; } - // query - computed: false, optional: false, required: true + // query - computed: false, optional: true, required: false private _query = new SecurityMonitoringRuleQueryList(this, "query", false); public get query() { return this._query; @@ -1468,11 +1716,30 @@ export class SecurityMonitoringRule extends cdktf.TerraformResource { public putQuery(value: SecurityMonitoringRuleQuery[] | cdktf.IResolvable) { this._query.internalValue = value; } + public resetQuery() { + this._query.internalValue = undefined; + } // Temporarily expose input value. Use with caution. public get queryInput() { return this._query.internalValue; } + // signal_query - computed: false, optional: true, required: false + private _signalQuery = new SecurityMonitoringRuleSignalQueryList(this, "signal_query", false); + public get signalQuery() { + return this._signalQuery; + } + public putSignalQuery(value: SecurityMonitoringRuleSignalQuery[] | cdktf.IResolvable) { + this._signalQuery.internalValue = value; + } + public resetSignalQuery() { + this._signalQuery.internalValue = undefined; + } + // Temporarily expose input value. Use with caution. + public get signalQueryInput() { + return this._signalQuery.internalValue; + } + // ========= // SYNTHESIS // ========= @@ -1490,6 +1757,7 @@ export class SecurityMonitoringRule extends cdktf.TerraformResource { filter: cdktf.listMapper(securityMonitoringRuleFilterToTerraform, true)(this._filter.internalValue), options: securityMonitoringRuleOptionsToTerraform(this._options.internalValue), query: cdktf.listMapper(securityMonitoringRuleQueryToTerraform, true)(this._query.internalValue), + signal_query: cdktf.listMapper(securityMonitoringRuleSignalQueryToTerraform, true)(this._signalQuery.internalValue), }; } } diff --git a/src/service-definition-yaml/index.ts b/src/service-definition-yaml/index.ts index d9e7b83c0..12e55ce49 100644 --- a/src/service-definition-yaml/index.ts +++ b/src/service-definition-yaml/index.ts @@ -48,7 +48,7 @@ export class ServiceDefinitionYaml extends cdktf.TerraformResource { terraformResourceType: 'datadog_service_definition_yaml', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/service-level-objective/index.ts b/src/service-level-objective/index.ts index d736c4c01..53b0ac2ef 100644 --- a/src/service-level-objective/index.ts +++ b/src/service-level-objective/index.ts @@ -353,7 +353,7 @@ export class ServiceLevelObjective extends cdktf.TerraformResource { terraformResourceType: 'datadog_service_level_objective', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/slo-correction/index.ts b/src/slo-correction/index.ts index 7b42b88c4..cb82c905d 100644 --- a/src/slo-correction/index.ts +++ b/src/slo-correction/index.ts @@ -90,7 +90,7 @@ export class SloCorrection extends cdktf.TerraformResource { terraformResourceType: 'datadog_slo_correction', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/synthetics-global-variable/index.ts b/src/synthetics-global-variable/index.ts index 789fb676d..6472e4586 100644 --- a/src/synthetics-global-variable/index.ts +++ b/src/synthetics-global-variable/index.ts @@ -334,7 +334,7 @@ export class SyntheticsGlobalVariable extends cdktf.TerraformResource { terraformResourceType: 'datadog_synthetics_global_variable', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/synthetics-private-location/index.ts b/src/synthetics-private-location/index.ts index 35aeb876d..749eb6731 100644 --- a/src/synthetics-private-location/index.ts +++ b/src/synthetics-private-location/index.ts @@ -133,7 +133,7 @@ export class SyntheticsPrivateLocation extends cdktf.TerraformResource { terraformResourceType: 'datadog_synthetics_private_location', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/synthetics-test/index.ts b/src/synthetics-test/index.ts index f8a99c9d1..34f2f4711 100644 --- a/src/synthetics-test/index.ts +++ b/src/synthetics-test/index.ts @@ -4752,6 +4752,12 @@ export interface SyntheticsTestOptionsList { */ readonly checkCertificateRevocation?: boolean | cdktf.IResolvable; /** + * Disable Cross-Origin Resource Sharing for browser tests. + * + * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/synthetics_test#disable_cors SyntheticsTest#disable_cors} + */ + readonly disableCors?: boolean | cdktf.IResolvable; + /** * Disable Content Security Policy for browser tests. * * Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/datadog/r/synthetics_test#disable_csp SyntheticsTest#disable_csp} @@ -4850,6 +4856,7 @@ export function syntheticsTestOptionsListToTerraform(struct?: SyntheticsTestOpti accept_self_signed: cdktf.booleanToTerraform(struct!.acceptSelfSigned), allow_insecure: cdktf.booleanToTerraform(struct!.allowInsecure), check_certificate_revocation: cdktf.booleanToTerraform(struct!.checkCertificateRevocation), + disable_cors: cdktf.booleanToTerraform(struct!.disableCors), disable_csp: cdktf.booleanToTerraform(struct!.disableCsp), follow_redirects: cdktf.booleanToTerraform(struct!.followRedirects), ignore_server_certificate_error: cdktf.booleanToTerraform(struct!.ignoreServerCertificateError), @@ -4894,6 +4901,10 @@ export class SyntheticsTestOptionsListOutputReference extends cdktf.ComplexObjec hasAnyValues = true; internalValueResult.checkCertificateRevocation = this._checkCertificateRevocation; } + if (this._disableCors !== undefined) { + hasAnyValues = true; + internalValueResult.disableCors = this._disableCors; + } if (this._disableCsp !== undefined) { hasAnyValues = true; internalValueResult.disableCsp = this._disableCsp; @@ -4963,6 +4974,7 @@ export class SyntheticsTestOptionsListOutputReference extends cdktf.ComplexObjec this._acceptSelfSigned = undefined; this._allowInsecure = undefined; this._checkCertificateRevocation = undefined; + this._disableCors = undefined; this._disableCsp = undefined; this._followRedirects = undefined; this._ignoreServerCertificateError = undefined; @@ -4984,6 +4996,7 @@ export class SyntheticsTestOptionsListOutputReference extends cdktf.ComplexObjec this._acceptSelfSigned = value.acceptSelfSigned; this._allowInsecure = value.allowInsecure; this._checkCertificateRevocation = value.checkCertificateRevocation; + this._disableCors = value.disableCors; this._disableCsp = value.disableCsp; this._followRedirects = value.followRedirects; this._ignoreServerCertificateError = value.ignoreServerCertificateError; @@ -5050,6 +5063,22 @@ export class SyntheticsTestOptionsListOutputReference extends cdktf.ComplexObjec return this._checkCertificateRevocation; } + // disable_cors - computed: false, optional: true, required: false + private _disableCors?: boolean | cdktf.IResolvable; + public get disableCors() { + return this.getBooleanAttribute('disable_cors'); + } + public set disableCors(value: boolean | cdktf.IResolvable) { + this._disableCors = value; + } + public resetDisableCors() { + this._disableCors = undefined; + } + // Temporarily expose input value. Use with caution. + public get disableCorsInput() { + return this._disableCors; + } + // disable_csp - computed: false, optional: true, required: false private _disableCsp?: boolean | cdktf.IResolvable; public get disableCsp() { @@ -6484,7 +6513,7 @@ export class SyntheticsTest extends cdktf.TerraformResource { terraformResourceType: 'datadog_synthetics_test', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/user/index.ts b/src/user/index.ts index 42cc3b23b..356a95d03 100644 --- a/src/user/index.ts +++ b/src/user/index.ts @@ -72,7 +72,7 @@ export class User extends cdktf.TerraformResource { terraformResourceType: 'datadog_user', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/version.json b/src/version.json index d6485284a..96cb1d355 100644 --- a/src/version.json +++ b/src/version.json @@ -1,3 +1,3 @@ { - "registry.terraform.io/datadog/datadog": "3.16.0" + "registry.terraform.io/datadog/datadog": "3.17.0" } diff --git a/src/webhook-custom-variable/index.ts b/src/webhook-custom-variable/index.ts index 00b5af32c..791f435d6 100644 --- a/src/webhook-custom-variable/index.ts +++ b/src/webhook-custom-variable/index.ts @@ -60,7 +60,7 @@ export class WebhookCustomVariable extends cdktf.TerraformResource { terraformResourceType: 'datadog_webhook_custom_variable', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/src/webhook/index.ts b/src/webhook/index.ts index 8be147eae..d795feb3e 100644 --- a/src/webhook/index.ts +++ b/src/webhook/index.ts @@ -72,7 +72,7 @@ export class Webhook extends cdktf.TerraformResource { terraformResourceType: 'datadog_webhook', terraformGeneratorMetadata: { providerName: 'datadog', - providerVersion: '3.16.0', + providerVersion: '3.17.0', providerVersionConstraint: '~> 3.0' }, provider: config.provider, diff --git a/yarn.lock b/yarn.lock index de3a2d8e3..ea685ec59 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,21 @@ # yarn lockfile v1 +"@actions/core@^1.1.0": + version "1.10.0" + resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.10.0.tgz#44551c3c71163949a2f06e94d9ca2157a0cfac4f" + integrity sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug== + dependencies: + "@actions/http-client" "^2.0.1" + uuid "^8.3.2" + +"@actions/http-client@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@actions/http-client/-/http-client-2.0.1.tgz#873f4ca98fe32f6839462a6f046332677322f99c" + integrity sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw== + dependencies: + tunnel "^0.0.6" + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" @@ -101,9 +116,9 @@ jsii-srcmak "^0.1.686" "@cdktf/provider-project@^0.2.8": - version "0.2.66" - resolved "https://registry.yarnpkg.com/@cdktf/provider-project/-/provider-project-0.2.66.tgz#d774819eb2285ec25e3ce68f94ce43f315e985f8" - integrity sha512-jw74IuKcWfYZtbPo0czEtrYrsnD4CEO4En92f5ICdTP7n2yC244iip3LKETstXhnfAjZ5CSA02zOwlPYzB7cvg== + version "0.2.71" + resolved "https://registry.yarnpkg.com/@cdktf/provider-project/-/provider-project-0.2.71.tgz#18ea4a1465e96a06f73087b31a5f434df0e81288" + integrity sha512-zgifSydEsNTS7iKeWlcH8yaW459RvjTvp86LPWsQnU+lCt8KYWveCdCPZd892Gj1iIuintHrUpkWqIGIXqLLzg== dependencies: change-case "^4.1.2" fs-extra "^10.1.0" @@ -3172,10 +3187,10 @@ progress@^2.0.3: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -projen@^0.63.29: - version "0.63.29" - resolved "https://registry.yarnpkg.com/projen/-/projen-0.63.29.tgz#b2f830bd2b6c26c6c04fd0b076f94f463ce8e82f" - integrity sha512-dihvfaKY2O7CzB6/C2rXNgvdVG0k02ixEKo+hxnzz22LkLwXOncq8udRPeBTzqPTo5BYam3NeN5nUCv5Eyz5lw== +projen@^0.64.1: + version "0.64.1" + resolved "https://registry.yarnpkg.com/projen/-/projen-0.64.1.tgz#6148aee0657c31f97e884a781e9c0f7c565abc69" + integrity sha512-fiAX1QwOcJlGdvXtzrx6ZMUKUAOf2/QleL+FsZCfJB20K2JO/q+3P0QGLW9spcHbJQ3xRqw35Wjr7JTVZaL8DA== dependencies: "@iarna/toml" "^2.2.5" case "^1.6.3" @@ -3916,6 +3931,11 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" +tunnel@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" + integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -4064,6 +4084,11 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"