/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface IntegrationAwsAccountConfig extends cdktf.TerraformMetaArguments { /** * Tags to apply to all metrics in the account. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#account_tags IntegrationAwsAccount#account_tags} */ readonly accountTags?: string[]; /** * Your AWS Account ID without dashes. Invalid aws_account_id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#aws_account_id IntegrationAwsAccount#aws_account_id} */ readonly awsAccountId: string; /** * AWS Account partition. Valid values are `aws`, `aws-cn`, `aws-us-gov`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#aws_partition IntegrationAwsAccount#aws_partition} */ readonly awsPartition: string; /** * auth_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#auth_config IntegrationAwsAccount#auth_config} */ readonly authConfig?: IntegrationAwsAccountAuthConfig; /** * aws_regions block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#aws_regions IntegrationAwsAccount#aws_regions} */ readonly awsRegions?: IntegrationAwsAccountAwsRegions; /** * logs_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#logs_config IntegrationAwsAccount#logs_config} */ readonly logsConfig?: IntegrationAwsAccountLogsConfig; /** * metrics_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#metrics_config IntegrationAwsAccount#metrics_config} */ readonly metricsConfig?: IntegrationAwsAccountMetricsConfig; /** * resources_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#resources_config IntegrationAwsAccount#resources_config} */ readonly resourcesConfig?: IntegrationAwsAccountResourcesConfig; /** * traces_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#traces_config IntegrationAwsAccount#traces_config} */ readonly tracesConfig?: IntegrationAwsAccountTracesConfig; } export interface IntegrationAwsAccountAuthConfigAwsAuthConfigKeys { /** * AWS Access Key ID. Invalid access_key_id. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#access_key_id IntegrationAwsAccount#access_key_id} */ readonly accessKeyId?: string; /** * AWS Secret Access Key. This value is write-only; changes made outside of Terraform will not be drift-detected. Secret_access_key must be non-empty and not contain whitespace. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#secret_access_key IntegrationAwsAccount#secret_access_key} */ readonly secretAccessKey?: string; } export declare function integrationAwsAccountAuthConfigAwsAuthConfigKeysToTerraform(struct?: IntegrationAwsAccountAuthConfigAwsAuthConfigKeys | cdktf.IResolvable): any; export declare function integrationAwsAccountAuthConfigAwsAuthConfigKeysToHclTerraform(struct?: IntegrationAwsAccountAuthConfigAwsAuthConfigKeys | cdktf.IResolvable): any; export declare class IntegrationAwsAccountAuthConfigAwsAuthConfigKeysOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountAuthConfigAwsAuthConfigKeys | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountAuthConfigAwsAuthConfigKeys | cdktf.IResolvable | undefined); private _accessKeyId?; get accessKeyId(): string; set accessKeyId(value: string); resetAccessKeyId(): void; get accessKeyIdInput(): string | undefined; private _secretAccessKey?; get secretAccessKey(): string; set secretAccessKey(value: string); resetSecretAccessKey(): void; get secretAccessKeyInput(): string | undefined; } export interface IntegrationAwsAccountAuthConfigAwsAuthConfigRole { /** * AWS IAM External ID for associated role. If omitted, one will be generated. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#external_id IntegrationAwsAccount#external_id} */ readonly externalId?: string; /** * AWS IAM Role name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#role_name IntegrationAwsAccount#role_name} */ readonly roleName?: string; } export declare function integrationAwsAccountAuthConfigAwsAuthConfigRoleToTerraform(struct?: IntegrationAwsAccountAuthConfigAwsAuthConfigRole | cdktf.IResolvable): any; export declare function integrationAwsAccountAuthConfigAwsAuthConfigRoleToHclTerraform(struct?: IntegrationAwsAccountAuthConfigAwsAuthConfigRole | cdktf.IResolvable): any; export declare class IntegrationAwsAccountAuthConfigAwsAuthConfigRoleOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountAuthConfigAwsAuthConfigRole | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountAuthConfigAwsAuthConfigRole | cdktf.IResolvable | undefined); private _externalId?; get externalId(): string; set externalId(value: string); resetExternalId(): void; get externalIdInput(): string | undefined; private _roleName?; get roleName(): string; set roleName(value: string); resetRoleName(): void; get roleNameInput(): string | undefined; } export interface IntegrationAwsAccountAuthConfig { /** * aws_auth_config_keys block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#aws_auth_config_keys IntegrationAwsAccount#aws_auth_config_keys} */ readonly awsAuthConfigKeys?: IntegrationAwsAccountAuthConfigAwsAuthConfigKeys; /** * aws_auth_config_role block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#aws_auth_config_role IntegrationAwsAccount#aws_auth_config_role} */ readonly awsAuthConfigRole?: IntegrationAwsAccountAuthConfigAwsAuthConfigRole; } export declare function integrationAwsAccountAuthConfigToTerraform(struct?: IntegrationAwsAccountAuthConfig | cdktf.IResolvable): any; export declare function integrationAwsAccountAuthConfigToHclTerraform(struct?: IntegrationAwsAccountAuthConfig | cdktf.IResolvable): any; export declare class IntegrationAwsAccountAuthConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountAuthConfig | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountAuthConfig | cdktf.IResolvable | undefined); private _awsAuthConfigKeys; get awsAuthConfigKeys(): IntegrationAwsAccountAuthConfigAwsAuthConfigKeysOutputReference; putAwsAuthConfigKeys(value: IntegrationAwsAccountAuthConfigAwsAuthConfigKeys): void; resetAwsAuthConfigKeys(): void; get awsAuthConfigKeysInput(): cdktf.IResolvable | IntegrationAwsAccountAuthConfigAwsAuthConfigKeys | undefined; private _awsAuthConfigRole; get awsAuthConfigRole(): IntegrationAwsAccountAuthConfigAwsAuthConfigRoleOutputReference; putAwsAuthConfigRole(value: IntegrationAwsAccountAuthConfigAwsAuthConfigRole): void; resetAwsAuthConfigRole(): void; get awsAuthConfigRoleInput(): cdktf.IResolvable | IntegrationAwsAccountAuthConfigAwsAuthConfigRole | undefined; } export interface IntegrationAwsAccountAwsRegions { /** * Include all regions. Defaults to `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#include_all IntegrationAwsAccount#include_all} */ readonly includeAll?: boolean | cdktf.IResolvable; /** * Include only these regions. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#include_only IntegrationAwsAccount#include_only} */ readonly includeOnly?: string[]; } export declare function integrationAwsAccountAwsRegionsToTerraform(struct?: IntegrationAwsAccountAwsRegions | cdktf.IResolvable): any; export declare function integrationAwsAccountAwsRegionsToHclTerraform(struct?: IntegrationAwsAccountAwsRegions | cdktf.IResolvable): any; export declare class IntegrationAwsAccountAwsRegionsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountAwsRegions | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountAwsRegions | cdktf.IResolvable | undefined); private _includeAll?; get includeAll(): boolean | cdktf.IResolvable; set includeAll(value: boolean | cdktf.IResolvable); resetIncludeAll(): void; get includeAllInput(): boolean | cdktf.IResolvable | undefined; private _includeOnly?; get includeOnly(): string[]; set includeOnly(value: string[]); resetIncludeOnly(): void; get includeOnlyInput(): string[] | undefined; } export interface IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters { /** * The AWS service for which the tag filters defined in `tags` will be applied. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#source IntegrationAwsAccount#source} */ readonly source: string; /** * The AWS resource tags to filter on for the service specified by `source`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#tags IntegrationAwsAccount#tags} */ readonly tags: string[]; } export declare function integrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFiltersToTerraform(struct?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters | cdktf.IResolvable): any; export declare function integrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFiltersToHclTerraform(struct?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters | cdktf.IResolvable): any; export declare class IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFiltersOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters | cdktf.IResolvable | undefined); private _source?; get source(): string; set source(value: string); get sourceInput(): string | undefined; private _tags?; get tags(): string[]; set tags(value: string[]); get tagsInput(): string[] | undefined; } export declare class IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFiltersList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters[] | 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(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFiltersOutputReference; } export interface IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig { /** * tag_filters block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#tag_filters IntegrationAwsAccount#tag_filters} */ readonly tagFilters?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters[] | cdktf.IResolvable; } export declare function integrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigToTerraform(struct?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig | cdktf.IResolvable): any; export declare function integrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigToHclTerraform(struct?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig | cdktf.IResolvable): any; export declare class IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig | cdktf.IResolvable | undefined); private _tagFilters; get tagFilters(): IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFiltersList; putTagFilters(value: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters[] | cdktf.IResolvable): void; resetTagFilters(): void; get tagFiltersInput(): cdktf.IResolvable | IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigTagFilters[] | undefined; } export interface IntegrationAwsAccountLogsConfigLambdaForwarder { /** * List of Datadog Lambda Log Forwarder ARNs in your AWS account. Defaults to `[]`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#lambdas IntegrationAwsAccount#lambdas} */ readonly lambdas?: string[]; /** * List of service IDs set to enable automatic log collection. Use [`datadog_integration_aws_available_logs_services` data source](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/data-sources/integration_aws_available_logs_services) or [the AWS Logs Integration API](https://docs.datadoghq.com/api/latest/aws-logs-integration/?#get-list-of-aws-log-ready-services) to get allowed values. Defaults to `[]`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#sources IntegrationAwsAccount#sources} */ readonly sources?: string[]; /** * log_source_config block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#log_source_config IntegrationAwsAccount#log_source_config} */ readonly logSourceConfig?: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig; } export declare function integrationAwsAccountLogsConfigLambdaForwarderToTerraform(struct?: IntegrationAwsAccountLogsConfigLambdaForwarder | cdktf.IResolvable): any; export declare function integrationAwsAccountLogsConfigLambdaForwarderToHclTerraform(struct?: IntegrationAwsAccountLogsConfigLambdaForwarder | cdktf.IResolvable): any; export declare class IntegrationAwsAccountLogsConfigLambdaForwarderOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountLogsConfigLambdaForwarder | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountLogsConfigLambdaForwarder | cdktf.IResolvable | undefined); private _lambdas?; get lambdas(): string[]; set lambdas(value: string[]); resetLambdas(): void; get lambdasInput(): string[] | undefined; private _sources?; get sources(): string[]; set sources(value: string[]); resetSources(): void; get sourcesInput(): string[] | undefined; private _logSourceConfig; get logSourceConfig(): IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfigOutputReference; putLogSourceConfig(value: IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig): void; resetLogSourceConfig(): void; get logSourceConfigInput(): cdktf.IResolvable | IntegrationAwsAccountLogsConfigLambdaForwarderLogSourceConfig | undefined; } export interface IntegrationAwsAccountLogsConfig { /** * lambda_forwarder block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#lambda_forwarder IntegrationAwsAccount#lambda_forwarder} */ readonly lambdaForwarder?: IntegrationAwsAccountLogsConfigLambdaForwarder; } export declare function integrationAwsAccountLogsConfigToTerraform(struct?: IntegrationAwsAccountLogsConfig | cdktf.IResolvable): any; export declare function integrationAwsAccountLogsConfigToHclTerraform(struct?: IntegrationAwsAccountLogsConfig | cdktf.IResolvable): any; export declare class IntegrationAwsAccountLogsConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountLogsConfig | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountLogsConfig | cdktf.IResolvable | undefined); private _lambdaForwarder; get lambdaForwarder(): IntegrationAwsAccountLogsConfigLambdaForwarderOutputReference; putLambdaForwarder(value: IntegrationAwsAccountLogsConfigLambdaForwarder): void; resetLambdaForwarder(): void; get lambdaForwarderInput(): cdktf.IResolvable | IntegrationAwsAccountLogsConfigLambdaForwarder | undefined; } export interface IntegrationAwsAccountMetricsConfigNamespaceFilters { /** * Exclude only these namespaces from metrics collection. Use [`datadog_integration_aws_available_namespaces` data source](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/data-sources/integration_aws_available_namespaces) to get allowed values. Defaults to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default to reduce your AWS CloudWatch costs from `GetMetricData` API calls. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#exclude_only IntegrationAwsAccount#exclude_only} */ readonly excludeOnly?: string[]; /** * Include only these namespaces for metrics collection. Use [`datadog_integration_aws_available_namespaces` data source](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/data-sources/integration_aws_available_namespaces) to get allowed values. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#include_only IntegrationAwsAccount#include_only} */ readonly includeOnly?: string[]; } export declare function integrationAwsAccountMetricsConfigNamespaceFiltersToTerraform(struct?: IntegrationAwsAccountMetricsConfigNamespaceFilters | cdktf.IResolvable): any; export declare function integrationAwsAccountMetricsConfigNamespaceFiltersToHclTerraform(struct?: IntegrationAwsAccountMetricsConfigNamespaceFilters | cdktf.IResolvable): any; export declare class IntegrationAwsAccountMetricsConfigNamespaceFiltersOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountMetricsConfigNamespaceFilters | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountMetricsConfigNamespaceFilters | cdktf.IResolvable | undefined); private _excludeOnly?; get excludeOnly(): string[]; set excludeOnly(value: string[]); resetExcludeOnly(): void; get excludeOnlyInput(): string[] | undefined; private _includeOnly?; get includeOnly(): string[]; set includeOnly(value: string[]); resetIncludeOnly(): void; get includeOnlyInput(): string[] | undefined; } export interface IntegrationAwsAccountMetricsConfigTagFilters { /** * The AWS service for which the tag filters defined in `tags` will be applied. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#namespace IntegrationAwsAccount#namespace} */ readonly namespace: string; /** * The AWS resource tags to filter on for the service specified by `namespace`. Defaults to `[]`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#tags IntegrationAwsAccount#tags} */ readonly tags?: string[]; } export declare function integrationAwsAccountMetricsConfigTagFiltersToTerraform(struct?: IntegrationAwsAccountMetricsConfigTagFilters | cdktf.IResolvable): any; export declare function integrationAwsAccountMetricsConfigTagFiltersToHclTerraform(struct?: IntegrationAwsAccountMetricsConfigTagFilters | cdktf.IResolvable): any; export declare class IntegrationAwsAccountMetricsConfigTagFiltersOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @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) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): IntegrationAwsAccountMetricsConfigTagFilters | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountMetricsConfigTagFilters | cdktf.IResolvable | undefined); private _namespace?; get namespace(): string; set namespace(value: string); get namespaceInput(): string | undefined; private _tags?; get tags(): string[]; set tags(value: string[]); resetTags(): void; get tagsInput(): string[] | undefined; } export declare class IntegrationAwsAccountMetricsConfigTagFiltersList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: IntegrationAwsAccountMetricsConfigTagFilters[] | 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(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): IntegrationAwsAccountMetricsConfigTagFiltersOutputReference; } export interface IntegrationAwsAccountMetricsConfig { /** * Enable EC2 automute for AWS metrics Defaults to `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#automute_enabled IntegrationAwsAccount#automute_enabled} */ readonly automuteEnabled?: boolean | cdktf.IResolvable; /** * Enable CloudWatch alarms collection Defaults to `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#collect_cloudwatch_alarms IntegrationAwsAccount#collect_cloudwatch_alarms} */ readonly collectCloudwatchAlarms?: boolean | cdktf.IResolvable; /** * Enable custom metrics collection Defaults to `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#collect_custom_metrics IntegrationAwsAccount#collect_custom_metrics} */ readonly collectCustomMetrics?: boolean | cdktf.IResolvable; /** * Enable AWS metrics collection Defaults to `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#enabled IntegrationAwsAccount#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * namespace_filters block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#namespace_filters IntegrationAwsAccount#namespace_filters} */ readonly namespaceFilters?: IntegrationAwsAccountMetricsConfigNamespaceFilters; /** * tag_filters block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#tag_filters IntegrationAwsAccount#tag_filters} */ readonly tagFilters?: IntegrationAwsAccountMetricsConfigTagFilters[] | cdktf.IResolvable; } export declare function integrationAwsAccountMetricsConfigToTerraform(struct?: IntegrationAwsAccountMetricsConfig | cdktf.IResolvable): any; export declare function integrationAwsAccountMetricsConfigToHclTerraform(struct?: IntegrationAwsAccountMetricsConfig | cdktf.IResolvable): any; export declare class IntegrationAwsAccountMetricsConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountMetricsConfig | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountMetricsConfig | cdktf.IResolvable | undefined); private _automuteEnabled?; get automuteEnabled(): boolean | cdktf.IResolvable; set automuteEnabled(value: boolean | cdktf.IResolvable); resetAutomuteEnabled(): void; get automuteEnabledInput(): boolean | cdktf.IResolvable | undefined; private _collectCloudwatchAlarms?; get collectCloudwatchAlarms(): boolean | cdktf.IResolvable; set collectCloudwatchAlarms(value: boolean | cdktf.IResolvable); resetCollectCloudwatchAlarms(): void; get collectCloudwatchAlarmsInput(): boolean | cdktf.IResolvable | undefined; private _collectCustomMetrics?; get collectCustomMetrics(): boolean | cdktf.IResolvable; set collectCustomMetrics(value: boolean | cdktf.IResolvable); resetCollectCustomMetrics(): void; get collectCustomMetricsInput(): boolean | cdktf.IResolvable | undefined; private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): boolean | cdktf.IResolvable | undefined; private _namespaceFilters; get namespaceFilters(): IntegrationAwsAccountMetricsConfigNamespaceFiltersOutputReference; putNamespaceFilters(value: IntegrationAwsAccountMetricsConfigNamespaceFilters): void; resetNamespaceFilters(): void; get namespaceFiltersInput(): cdktf.IResolvable | IntegrationAwsAccountMetricsConfigNamespaceFilters | undefined; private _tagFilters; get tagFilters(): IntegrationAwsAccountMetricsConfigTagFiltersList; putTagFilters(value: IntegrationAwsAccountMetricsConfigTagFilters[] | cdktf.IResolvable): void; resetTagFilters(): void; get tagFiltersInput(): cdktf.IResolvable | IntegrationAwsAccountMetricsConfigTagFilters[] | undefined; } export interface IntegrationAwsAccountResourcesConfig { /** * Enable Cloud Security Management to scan AWS resources for vulnerabilities, misconfigurations, identity risks, and compliance violations. Requires `extended_collection` to be set to `true`. Defaults to `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#cloud_security_posture_management_collection IntegrationAwsAccount#cloud_security_posture_management_collection} */ readonly cloudSecurityPostureManagementCollection?: boolean | cdktf.IResolvable; /** * Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for `cloud_security_posture_management_collection`. Defaults to `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#extended_collection IntegrationAwsAccount#extended_collection} */ readonly extendedCollection?: boolean | cdktf.IResolvable; } export declare function integrationAwsAccountResourcesConfigToTerraform(struct?: IntegrationAwsAccountResourcesConfig | cdktf.IResolvable): any; export declare function integrationAwsAccountResourcesConfigToHclTerraform(struct?: IntegrationAwsAccountResourcesConfig | cdktf.IResolvable): any; export declare class IntegrationAwsAccountResourcesConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountResourcesConfig | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountResourcesConfig | cdktf.IResolvable | undefined); private _cloudSecurityPostureManagementCollection?; get cloudSecurityPostureManagementCollection(): boolean | cdktf.IResolvable; set cloudSecurityPostureManagementCollection(value: boolean | cdktf.IResolvable); resetCloudSecurityPostureManagementCollection(): void; get cloudSecurityPostureManagementCollectionInput(): boolean | cdktf.IResolvable | undefined; private _extendedCollection?; get extendedCollection(): boolean | cdktf.IResolvable; set extendedCollection(value: boolean | cdktf.IResolvable); resetExtendedCollection(): void; get extendedCollectionInput(): boolean | cdktf.IResolvable | undefined; } export interface IntegrationAwsAccountTracesConfigXrayServices { /** * Include all services. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#include_all IntegrationAwsAccount#include_all} */ readonly includeAll?: boolean | cdktf.IResolvable; /** * Include only these services. Defaults to `[]`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#include_only IntegrationAwsAccount#include_only} */ readonly includeOnly?: string[]; } export declare function integrationAwsAccountTracesConfigXrayServicesToTerraform(struct?: IntegrationAwsAccountTracesConfigXrayServices | cdktf.IResolvable): any; export declare function integrationAwsAccountTracesConfigXrayServicesToHclTerraform(struct?: IntegrationAwsAccountTracesConfigXrayServices | cdktf.IResolvable): any; export declare class IntegrationAwsAccountTracesConfigXrayServicesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountTracesConfigXrayServices | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountTracesConfigXrayServices | cdktf.IResolvable | undefined); private _includeAll?; get includeAll(): boolean | cdktf.IResolvable; set includeAll(value: boolean | cdktf.IResolvable); resetIncludeAll(): void; get includeAllInput(): boolean | cdktf.IResolvable | undefined; private _includeOnly?; get includeOnly(): string[]; set includeOnly(value: string[]); resetIncludeOnly(): void; get includeOnlyInput(): string[] | undefined; } export interface IntegrationAwsAccountTracesConfig { /** * xray_services block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#xray_services IntegrationAwsAccount#xray_services} */ readonly xrayServices?: IntegrationAwsAccountTracesConfigXrayServices; } export declare function integrationAwsAccountTracesConfigToTerraform(struct?: IntegrationAwsAccountTracesConfig | cdktf.IResolvable): any; export declare function integrationAwsAccountTracesConfigToHclTerraform(struct?: IntegrationAwsAccountTracesConfig | cdktf.IResolvable): any; export declare class IntegrationAwsAccountTracesConfigOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): IntegrationAwsAccountTracesConfig | cdktf.IResolvable | undefined; set internalValue(value: IntegrationAwsAccountTracesConfig | cdktf.IResolvable | undefined); private _xrayServices; get xrayServices(): IntegrationAwsAccountTracesConfigXrayServicesOutputReference; putXrayServices(value: IntegrationAwsAccountTracesConfigXrayServices): void; resetXrayServices(): void; get xrayServicesInput(): cdktf.IResolvable | IntegrationAwsAccountTracesConfigXrayServices | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account datadog_integration_aws_account} */ export declare class IntegrationAwsAccount extends cdktf.TerraformResource { static readonly tfResourceType = "datadog_integration_aws_account"; /** * Generates CDKTF code for importing a IntegrationAwsAccount resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the IntegrationAwsAccount to import * @param importFromId The id of the existing IntegrationAwsAccount that should be imported. Refer to the {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the IntegrationAwsAccount to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * Create a new {@link https://registry.terraform.io/providers/datadog/datadog/3.82.0/docs/resources/integration_aws_account datadog_integration_aws_account} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options IntegrationAwsAccountConfig */ constructor(scope: Construct, id: string, config: IntegrationAwsAccountConfig); private _accountTags?; get accountTags(): string[]; set accountTags(value: string[]); resetAccountTags(): void; get accountTagsInput(): string[] | undefined; private _awsAccountId?; get awsAccountId(): string; set awsAccountId(value: string); get awsAccountIdInput(): string | undefined; private _awsPartition?; get awsPartition(): string; set awsPartition(value: string); get awsPartitionInput(): string | undefined; get id(): string; private _authConfig; get authConfig(): IntegrationAwsAccountAuthConfigOutputReference; putAuthConfig(value: IntegrationAwsAccountAuthConfig): void; resetAuthConfig(): void; get authConfigInput(): cdktf.IResolvable | IntegrationAwsAccountAuthConfig | undefined; private _awsRegions; get awsRegions(): IntegrationAwsAccountAwsRegionsOutputReference; putAwsRegions(value: IntegrationAwsAccountAwsRegions): void; resetAwsRegions(): void; get awsRegionsInput(): cdktf.IResolvable | IntegrationAwsAccountAwsRegions | undefined; private _logsConfig; get logsConfig(): IntegrationAwsAccountLogsConfigOutputReference; putLogsConfig(value: IntegrationAwsAccountLogsConfig): void; resetLogsConfig(): void; get logsConfigInput(): cdktf.IResolvable | IntegrationAwsAccountLogsConfig | undefined; private _metricsConfig; get metricsConfig(): IntegrationAwsAccountMetricsConfigOutputReference; putMetricsConfig(value: IntegrationAwsAccountMetricsConfig): void; resetMetricsConfig(): void; get metricsConfigInput(): cdktf.IResolvable | IntegrationAwsAccountMetricsConfig | undefined; private _resourcesConfig; get resourcesConfig(): IntegrationAwsAccountResourcesConfigOutputReference; putResourcesConfig(value: IntegrationAwsAccountResourcesConfig): void; resetResourcesConfig(): void; get resourcesConfigInput(): cdktf.IResolvable | IntegrationAwsAccountResourcesConfig | undefined; private _tracesConfig; get tracesConfig(): IntegrationAwsAccountTracesConfigOutputReference; putTracesConfig(value: IntegrationAwsAccountTracesConfig): void; resetTracesConfig(): void; get tracesConfigInput(): cdktf.IResolvable | IntegrationAwsAccountTracesConfig | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }