/**
 * Copyright (c) HashiCorp, Inc.
 * SPDX-License-Identifier: MPL-2.0
 */
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataLossPreventionDiscoveryConfigConfig extends cdktf.TerraformMetaArguments {
    /**
    * Display Name (max 1000 Chars)
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#display_name DataLossPreventionDiscoveryConfig#display_name}
    */
    readonly displayName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#id DataLossPreventionDiscoveryConfig#id}
    *
    * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
    * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
    */
    readonly id?: string;
    /**
    * Detection logic for profile generation
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#inspect_templates DataLossPreventionDiscoveryConfig#inspect_templates}
    */
    readonly inspectTemplates?: string[];
    /**
    * Location to create the discovery config in.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#location DataLossPreventionDiscoveryConfig#location}
    */
    readonly location: string;
    /**
    * The parent of the discovery config in any of the following formats:
    *
    * * 'projects/{{project}}/locations/{{location}}'
    * * 'organizations/{{organization_id}}/locations/{{location}}'
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#parent DataLossPreventionDiscoveryConfig#parent}
    */
    readonly parent: string;
    /**
    * Required. A status for this configuration Possible values: ["RUNNING", "PAUSED"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#status DataLossPreventionDiscoveryConfig#status}
    */
    readonly status?: string;
    /**
    * actions block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#actions DataLossPreventionDiscoveryConfig#actions}
    */
    readonly actions?: DataLossPreventionDiscoveryConfigActions[] | cdktf.IResolvable;
    /**
    * org_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#org_config DataLossPreventionDiscoveryConfig#org_config}
    */
    readonly orgConfig?: DataLossPreventionDiscoveryConfigOrgConfig;
    /**
    * targets block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#targets DataLossPreventionDiscoveryConfig#targets}
    */
    readonly targets?: DataLossPreventionDiscoveryConfigTargets[] | cdktf.IResolvable;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#timeouts DataLossPreventionDiscoveryConfig#timeouts}
    */
    readonly timeouts?: DataLossPreventionDiscoveryConfigTimeouts;
}
export interface DataLossPreventionDiscoveryConfigErrorsDetails {
}
export declare function dataLossPreventionDiscoveryConfigErrorsDetailsToTerraform(struct?: DataLossPreventionDiscoveryConfigErrorsDetails): any;
export declare function dataLossPreventionDiscoveryConfigErrorsDetailsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigErrorsDetails): any;
export declare class DataLossPreventionDiscoveryConfigErrorsDetailsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigErrorsDetails | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigErrorsDetails | undefined);
    get code(): number;
    private _details;
    get details(): cdktf.StringMapList;
    get message(): string;
}
export declare class DataLossPreventionDiscoveryConfigErrorsDetailsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataLossPreventionDiscoveryConfigErrorsDetailsOutputReference;
}
export interface DataLossPreventionDiscoveryConfigErrors {
}
export declare function dataLossPreventionDiscoveryConfigErrorsToTerraform(struct?: DataLossPreventionDiscoveryConfigErrors): any;
export declare function dataLossPreventionDiscoveryConfigErrorsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigErrors): any;
export declare class DataLossPreventionDiscoveryConfigErrorsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigErrors | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigErrors | undefined);
    private _details;
    get details(): DataLossPreventionDiscoveryConfigErrorsDetailsList;
    get timestamp(): string;
}
export declare class DataLossPreventionDiscoveryConfigErrorsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataLossPreventionDiscoveryConfigErrorsOutputReference;
}
export interface DataLossPreventionDiscoveryConfigActionsExportDataProfileTable {
    /**
    * Dataset Id of the table
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#dataset_id DataLossPreventionDiscoveryConfig#dataset_id}
    */
    readonly datasetId?: string;
    /**
    * The Google Cloud Platform project ID of the project containing the table. If omitted, the project ID is inferred from the API call.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#project_id DataLossPreventionDiscoveryConfig#project_id}
    */
    readonly projectId?: string;
    /**
    * Name of the table
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#table_id DataLossPreventionDiscoveryConfig#table_id}
    */
    readonly tableId?: string;
}
export declare function dataLossPreventionDiscoveryConfigActionsExportDataProfileTableToTerraform(struct?: DataLossPreventionDiscoveryConfigActionsExportDataProfileTableOutputReference | DataLossPreventionDiscoveryConfigActionsExportDataProfileTable): any;
export declare function dataLossPreventionDiscoveryConfigActionsExportDataProfileTableToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActionsExportDataProfileTableOutputReference | DataLossPreventionDiscoveryConfigActionsExportDataProfileTable): any;
export declare class DataLossPreventionDiscoveryConfigActionsExportDataProfileTableOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigActionsExportDataProfileTable | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActionsExportDataProfileTable | undefined);
    private _datasetId?;
    get datasetId(): string;
    set datasetId(value: string);
    resetDatasetId(): void;
    get datasetIdInput(): string | undefined;
    private _projectId?;
    get projectId(): string;
    set projectId(value: string);
    resetProjectId(): void;
    get projectIdInput(): string | undefined;
    private _tableId?;
    get tableId(): string;
    set tableId(value: string);
    resetTableId(): void;
    get tableIdInput(): string | undefined;
}
export interface DataLossPreventionDiscoveryConfigActionsExportData {
    /**
    * profile_table block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#profile_table DataLossPreventionDiscoveryConfig#profile_table}
    */
    readonly profileTable?: DataLossPreventionDiscoveryConfigActionsExportDataProfileTable;
}
export declare function dataLossPreventionDiscoveryConfigActionsExportDataToTerraform(struct?: DataLossPreventionDiscoveryConfigActionsExportDataOutputReference | DataLossPreventionDiscoveryConfigActionsExportData): any;
export declare function dataLossPreventionDiscoveryConfigActionsExportDataToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActionsExportDataOutputReference | DataLossPreventionDiscoveryConfigActionsExportData): any;
export declare class DataLossPreventionDiscoveryConfigActionsExportDataOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigActionsExportData | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActionsExportData | undefined);
    private _profileTable;
    get profileTable(): DataLossPreventionDiscoveryConfigActionsExportDataProfileTableOutputReference;
    putProfileTable(value: DataLossPreventionDiscoveryConfigActionsExportDataProfileTable): void;
    resetProfileTable(): void;
    get profileTableInput(): DataLossPreventionDiscoveryConfigActionsExportDataProfileTable | undefined;
}
export interface DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions {
    /**
    * The minimum data risk score that triggers the condition. Possible values: ["HIGH", "MEDIUM_OR_HIGH"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#minimum_risk_score DataLossPreventionDiscoveryConfig#minimum_risk_score}
    */
    readonly minimumRiskScore?: string;
    /**
    * The minimum sensitivity level that triggers the condition. Possible values: ["HIGH", "MEDIUM_OR_HIGH"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#minimum_sensitivity_score DataLossPreventionDiscoveryConfig#minimum_sensitivity_score}
    */
    readonly minimumSensitivityScore?: string;
}
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditionsToTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions | cdktf.IResolvable): any;
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditionsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions | cdktf.IResolvable): any;
export declare class DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditionsOutputReference 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(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions | cdktf.IResolvable | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions | cdktf.IResolvable | undefined);
    private _minimumRiskScore?;
    get minimumRiskScore(): string;
    set minimumRiskScore(value: string);
    resetMinimumRiskScore(): void;
    get minimumRiskScoreInput(): string | undefined;
    private _minimumSensitivityScore?;
    get minimumSensitivityScore(): string;
    set minimumSensitivityScore(value: string);
    resetMinimumSensitivityScore(): void;
    get minimumSensitivityScoreInput(): string | undefined;
}
export declare class DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditionsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions[] | 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): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditionsOutputReference;
}
export interface DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions {
    /**
    * The operator to apply to the collection of conditions Possible values: ["OR", "AND"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#logical_operator DataLossPreventionDiscoveryConfig#logical_operator}
    */
    readonly logicalOperator?: string;
    /**
    * conditions block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#conditions DataLossPreventionDiscoveryConfig#conditions}
    */
    readonly conditions?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions[] | cdktf.IResolvable;
}
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsToTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsOutputReference | DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions): any;
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsOutputReference | DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions): any;
export declare class DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions | undefined);
    private _logicalOperator?;
    get logicalOperator(): string;
    set logicalOperator(value: string);
    resetLogicalOperator(): void;
    get logicalOperatorInput(): string | undefined;
    private _conditions;
    get conditions(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditionsList;
    putConditions(value: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions[] | cdktf.IResolvable): void;
    resetConditions(): void;
    get conditionsInput(): cdktf.IResolvable | DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsConditions[] | undefined;
}
export interface DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition {
    /**
    * expressions block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#expressions DataLossPreventionDiscoveryConfig#expressions}
    */
    readonly expressions?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions;
}
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionToTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionOutputReference | DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition): any;
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionOutputReference | DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition): any;
export declare class DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition | undefined);
    private _expressions;
    get expressions(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressionsOutputReference;
    putExpressions(value: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions): void;
    resetExpressions(): void;
    get expressionsInput(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionExpressions | undefined;
}
export interface DataLossPreventionDiscoveryConfigActionsPubSubNotification {
    /**
    * How much data to include in the pub/sub message. Possible values: ["TABLE_PROFILE", "RESOURCE_NAME"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#detail_of_message DataLossPreventionDiscoveryConfig#detail_of_message}
    */
    readonly detailOfMessage?: string;
    /**
    * The type of event that triggers a Pub/Sub. At most one PubSubNotification per EventType is permitted. Possible values: ["NEW_PROFILE", "CHANGED_PROFILE", "SCORE_INCREASED", "ERROR_CHANGED"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#event DataLossPreventionDiscoveryConfig#event}
    */
    readonly event?: string;
    /**
    * Cloud Pub/Sub topic to send notifications to. Format is projects/{project}/topics/{topic}.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#topic DataLossPreventionDiscoveryConfig#topic}
    */
    readonly topic?: string;
    /**
    * pubsub_condition block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#pubsub_condition DataLossPreventionDiscoveryConfig#pubsub_condition}
    */
    readonly pubsubCondition?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition;
}
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationToTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationOutputReference | DataLossPreventionDiscoveryConfigActionsPubSubNotification): any;
export declare function dataLossPreventionDiscoveryConfigActionsPubSubNotificationToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActionsPubSubNotificationOutputReference | DataLossPreventionDiscoveryConfigActionsPubSubNotification): any;
export declare class DataLossPreventionDiscoveryConfigActionsPubSubNotificationOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigActionsPubSubNotification | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActionsPubSubNotification | undefined);
    private _detailOfMessage?;
    get detailOfMessage(): string;
    set detailOfMessage(value: string);
    resetDetailOfMessage(): void;
    get detailOfMessageInput(): string | undefined;
    private _event?;
    get event(): string;
    set event(value: string);
    resetEvent(): void;
    get eventInput(): string | undefined;
    private _topic?;
    get topic(): string;
    set topic(value: string);
    resetTopic(): void;
    get topicInput(): string | undefined;
    private _pubsubCondition;
    get pubsubCondition(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubConditionOutputReference;
    putPubsubCondition(value: DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition): void;
    resetPubsubCondition(): void;
    get pubsubConditionInput(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationPubsubCondition | undefined;
}
export interface DataLossPreventionDiscoveryConfigActions {
    /**
    * export_data block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#export_data DataLossPreventionDiscoveryConfig#export_data}
    */
    readonly exportData?: DataLossPreventionDiscoveryConfigActionsExportData;
    /**
    * pub_sub_notification block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#pub_sub_notification DataLossPreventionDiscoveryConfig#pub_sub_notification}
    */
    readonly pubSubNotification?: DataLossPreventionDiscoveryConfigActionsPubSubNotification;
}
export declare function dataLossPreventionDiscoveryConfigActionsToTerraform(struct?: DataLossPreventionDiscoveryConfigActions | cdktf.IResolvable): any;
export declare function dataLossPreventionDiscoveryConfigActionsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigActions | cdktf.IResolvable): any;
export declare class DataLossPreventionDiscoveryConfigActionsOutputReference 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(): DataLossPreventionDiscoveryConfigActions | cdktf.IResolvable | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigActions | cdktf.IResolvable | undefined);
    private _exportData;
    get exportData(): DataLossPreventionDiscoveryConfigActionsExportDataOutputReference;
    putExportData(value: DataLossPreventionDiscoveryConfigActionsExportData): void;
    resetExportData(): void;
    get exportDataInput(): DataLossPreventionDiscoveryConfigActionsExportData | undefined;
    private _pubSubNotification;
    get pubSubNotification(): DataLossPreventionDiscoveryConfigActionsPubSubNotificationOutputReference;
    putPubSubNotification(value: DataLossPreventionDiscoveryConfigActionsPubSubNotification): void;
    resetPubSubNotification(): void;
    get pubSubNotificationInput(): DataLossPreventionDiscoveryConfigActionsPubSubNotification | undefined;
}
export declare class DataLossPreventionDiscoveryConfigActionsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataLossPreventionDiscoveryConfigActions[] | 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): DataLossPreventionDiscoveryConfigActionsOutputReference;
}
export interface DataLossPreventionDiscoveryConfigOrgConfigLocation {
    /**
    * The ID for the folder within an organization to scan
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#folder_id DataLossPreventionDiscoveryConfig#folder_id}
    */
    readonly folderId?: string;
    /**
    * The ID of an organization to scan
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#organization_id DataLossPreventionDiscoveryConfig#organization_id}
    */
    readonly organizationId?: string;
}
export declare function dataLossPreventionDiscoveryConfigOrgConfigLocationToTerraform(struct?: DataLossPreventionDiscoveryConfigOrgConfigLocationOutputReference | DataLossPreventionDiscoveryConfigOrgConfigLocation): any;
export declare function dataLossPreventionDiscoveryConfigOrgConfigLocationToHclTerraform(struct?: DataLossPreventionDiscoveryConfigOrgConfigLocationOutputReference | DataLossPreventionDiscoveryConfigOrgConfigLocation): any;
export declare class DataLossPreventionDiscoveryConfigOrgConfigLocationOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigOrgConfigLocation | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigOrgConfigLocation | undefined);
    private _folderId?;
    get folderId(): string;
    set folderId(value: string);
    resetFolderId(): void;
    get folderIdInput(): string | undefined;
    private _organizationId?;
    get organizationId(): string;
    set organizationId(value: string);
    resetOrganizationId(): void;
    get organizationIdInput(): string | undefined;
}
export interface DataLossPreventionDiscoveryConfigOrgConfig {
    /**
    * The project that will run the scan. The DLP service account that exists within this project must have access to all resources that are profiled, and the cloud DLP API must be enabled.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#project_id DataLossPreventionDiscoveryConfig#project_id}
    */
    readonly projectId?: string;
    /**
    * location block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#location DataLossPreventionDiscoveryConfig#location}
    */
    readonly location?: DataLossPreventionDiscoveryConfigOrgConfigLocation;
}
export declare function dataLossPreventionDiscoveryConfigOrgConfigToTerraform(struct?: DataLossPreventionDiscoveryConfigOrgConfigOutputReference | DataLossPreventionDiscoveryConfigOrgConfig): any;
export declare function dataLossPreventionDiscoveryConfigOrgConfigToHclTerraform(struct?: DataLossPreventionDiscoveryConfigOrgConfigOutputReference | DataLossPreventionDiscoveryConfigOrgConfig): any;
export declare class DataLossPreventionDiscoveryConfigOrgConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigOrgConfig | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigOrgConfig | undefined);
    private _projectId?;
    get projectId(): string;
    set projectId(value: string);
    resetProjectId(): void;
    get projectIdInput(): string | undefined;
    private _location;
    get location(): DataLossPreventionDiscoveryConfigOrgConfigLocationOutputReference;
    putLocation(value: DataLossPreventionDiscoveryConfigOrgConfigLocation): void;
    resetLocation(): void;
    get locationInput(): DataLossPreventionDiscoveryConfigOrgConfigLocation | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence {
    /**
    * How frequently profiles may be updated when schemas are modified. Default to monthly Possible values: ["UPDATE_FREQUENCY_NEVER", "UPDATE_FREQUENCY_DAILY", "UPDATE_FREQUENCY_MONTHLY"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#frequency DataLossPreventionDiscoveryConfig#frequency}
    */
    readonly frequency?: string;
    /**
    * The type of events to consider when deciding if the table's schema has been modified and should have the profile updated. Defaults to NEW_COLUMN. Possible values: ["SCHEMA_NEW_COLUMNS", "SCHEMA_REMOVED_COLUMNS"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#types DataLossPreventionDiscoveryConfig#types}
    */
    readonly types?: string[];
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadenceToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadenceOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadenceToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadenceOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadenceOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence | undefined);
    private _frequency?;
    get frequency(): string;
    set frequency(value: string);
    resetFrequency(): void;
    get frequencyInput(): string | undefined;
    private _types?;
    get types(): string[];
    set types(value: string[]);
    resetTypes(): void;
    get typesInput(): string[] | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence {
    /**
    * How frequently data profiles can be updated when tables are modified. Defaults to never. Possible values: ["UPDATE_FREQUENCY_NEVER", "UPDATE_FREQUENCY_DAILY", "UPDATE_FREQUENCY_MONTHLY"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#frequency DataLossPreventionDiscoveryConfig#frequency}
    */
    readonly frequency?: string;
    /**
    * The type of events to consider when deciding if the table has been modified and should have the profile updated. Defaults to MODIFIED_TIMESTAMP Possible values: ["TABLE_MODIFIED_TIMESTAMP"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#types DataLossPreventionDiscoveryConfig#types}
    */
    readonly types?: string[];
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadenceToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadenceOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadenceToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadenceOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadenceOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence | undefined);
    private _frequency?;
    get frequency(): string;
    set frequency(value: string);
    resetFrequency(): void;
    get frequencyInput(): string | undefined;
    private _types?;
    get types(): string[];
    set types(value: string[]);
    resetTypes(): void;
    get typesInput(): string[] | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence {
    /**
    * schema_modified_cadence block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#schema_modified_cadence DataLossPreventionDiscoveryConfig#schema_modified_cadence}
    */
    readonly schemaModifiedCadence?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence;
    /**
    * table_modified_cadence block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#table_modified_cadence DataLossPreventionDiscoveryConfig#table_modified_cadence}
    */
    readonly tableModifiedCadence?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence | undefined);
    private _schemaModifiedCadence;
    get schemaModifiedCadence(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadenceOutputReference;
    putSchemaModifiedCadence(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence): void;
    resetSchemaModifiedCadence(): void;
    get schemaModifiedCadenceInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceSchemaModifiedCadence | undefined;
    private _tableModifiedCadence;
    get tableModifiedCadence(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadenceOutputReference;
    putTableModifiedCadence(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence): void;
    resetTableModifiedCadence(): void;
    get tableModifiedCadenceInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceTableModifiedCadence | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions {
    /**
    * Duration format. The minimum age a table must have before Cloud DLP can profile it. Value greater than 1.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#min_age DataLossPreventionDiscoveryConfig#min_age}
    */
    readonly minAge?: string;
    /**
    * Minimum number of rows that should be present before Cloud DLP profiles as a table.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#min_row_count DataLossPreventionDiscoveryConfig#min_row_count}
    */
    readonly minRowCount?: number;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditionsToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditionsOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditionsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditionsOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditionsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions | undefined);
    private _minAge?;
    get minAge(): string;
    set minAge(value: string);
    resetMinAge(): void;
    get minAgeInput(): string | undefined;
    private _minRowCount?;
    get minRowCount(): number;
    set minRowCount(value: number);
    resetMinRowCount(): void;
    get minRowCountInput(): number | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes {
    /**
    * A set of BiqQuery table types Possible values: ["BIG_QUERY_TABLE_TYPE_TABLE", "BIG_QUERY_TABLE_TYPE_EXTERNAL_BIG_LAKE"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#types DataLossPreventionDiscoveryConfig#types}
    */
    readonly types?: string[];
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypesToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypesToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes | undefined);
    private _types?;
    get types(): string[];
    set types(value: string[]);
    resetTypes(): void;
    get typesInput(): string[] | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions {
    /**
    * A timestamp in RFC3339 UTC "Zulu" format with nanosecond resolution and upto nine fractional digits.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#created_after DataLossPreventionDiscoveryConfig#created_after}
    */
    readonly createdAfter?: string;
    /**
    * Restrict discovery to categories of table types. Currently view, materialized view, snapshot and non-biglake external tables are supported. Possible values: ["BIG_QUERY_COLLECTION_ALL_TYPES", "BIG_QUERY_COLLECTION_ONLY_SUPPORTED_TYPES"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#type_collection DataLossPreventionDiscoveryConfig#type_collection}
    */
    readonly typeCollection?: string;
    /**
    * or_conditions block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#or_conditions DataLossPreventionDiscoveryConfig#or_conditions}
    */
    readonly orConditions?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions;
    /**
    * types block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#types DataLossPreventionDiscoveryConfig#types}
    */
    readonly types?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions | undefined);
    private _createdAfter?;
    get createdAfter(): string;
    set createdAfter(value: string);
    resetCreatedAfter(): void;
    get createdAfterInput(): string | undefined;
    private _typeCollection?;
    get typeCollection(): string;
    set typeCollection(value: string);
    resetTypeCollection(): void;
    get typeCollectionInput(): string | undefined;
    private _orConditions;
    get orConditions(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditionsOutputReference;
    putOrConditions(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions): void;
    resetOrConditions(): void;
    get orConditionsInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOrConditions | undefined;
    private _types;
    get types(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypesOutputReference;
    putTypes(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes): void;
    resetTypes(): void;
    get typesInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsTypes | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled {
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabledToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabledOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabledToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabledOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabledOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled | undefined);
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables {
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTablesToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTablesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTablesToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTablesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTablesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables | undefined);
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns {
    /**
    * if unset, this property matches all datasets
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#dataset_id_regex DataLossPreventionDiscoveryConfig#dataset_id_regex}
    */
    readonly datasetIdRegex?: string;
    /**
    * For organizations, if unset, will match all projects. Has no effect for data profile configurations created within a project.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#project_id_regex DataLossPreventionDiscoveryConfig#project_id_regex}
    */
    readonly projectIdRegex?: string;
    /**
    * if unset, this property matches all tables
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#table_id_regex DataLossPreventionDiscoveryConfig#table_id_regex}
    */
    readonly tableIdRegex?: string;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatternsToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns | cdktf.IResolvable): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatternsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns | cdktf.IResolvable): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatternsOutputReference 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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns | cdktf.IResolvable | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns | cdktf.IResolvable | undefined);
    private _datasetIdRegex?;
    get datasetIdRegex(): string;
    set datasetIdRegex(value: string);
    resetDatasetIdRegex(): void;
    get datasetIdRegexInput(): string | undefined;
    private _projectIdRegex?;
    get projectIdRegex(): string;
    set projectIdRegex(value: string);
    resetProjectIdRegex(): void;
    get projectIdRegexInput(): string | undefined;
    private _tableIdRegex?;
    get tableIdRegex(): string;
    set tableIdRegex(value: string);
    resetTableIdRegex(): void;
    get tableIdRegexInput(): string | undefined;
}
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatternsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns[] | 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): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatternsOutputReference;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes {
    /**
    * patterns block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#patterns DataLossPreventionDiscoveryConfig#patterns}
    */
    readonly patterns?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns[] | cdktf.IResolvable;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes | undefined);
    private _patterns;
    get patterns(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatternsList;
    putPatterns(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns[] | cdktf.IResolvable): void;
    resetPatterns(): void;
    get patternsInput(): cdktf.IResolvable | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesPatterns[] | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables {
    /**
    * include_regexes block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#include_regexes DataLossPreventionDiscoveryConfig#include_regexes}
    */
    readonly includeRegexes?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables | undefined);
    private _includeRegexes;
    get includeRegexes(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexesOutputReference;
    putIncludeRegexes(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes): void;
    resetIncludeRegexes(): void;
    get includeRegexesInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesIncludeRegexes | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter {
    /**
    * other_tables block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#other_tables DataLossPreventionDiscoveryConfig#other_tables}
    */
    readonly otherTables?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables;
    /**
    * tables block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#tables DataLossPreventionDiscoveryConfig#tables}
    */
    readonly tables?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter | undefined);
    private _otherTables;
    get otherTables(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTablesOutputReference;
    putOtherTables(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables): void;
    resetOtherTables(): void;
    get otherTablesInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOtherTables | undefined;
    private _tables;
    get tables(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTablesOutputReference;
    putTables(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables): void;
    resetTables(): void;
    get tablesInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterTables | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargetsBigQueryTarget {
    /**
    * cadence block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#cadence DataLossPreventionDiscoveryConfig#cadence}
    */
    readonly cadence?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence;
    /**
    * conditions block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#conditions DataLossPreventionDiscoveryConfig#conditions}
    */
    readonly conditions?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions;
    /**
    * disabled block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#disabled DataLossPreventionDiscoveryConfig#disabled}
    */
    readonly disabled?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled;
    /**
    * filter block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#filter DataLossPreventionDiscoveryConfig#filter}
    */
    readonly filter?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter;
}
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetToTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTarget): any;
export declare function dataLossPreventionDiscoveryConfigTargetsBigQueryTargetToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetOutputReference | DataLossPreventionDiscoveryConfigTargetsBigQueryTarget): any;
export declare class DataLossPreventionDiscoveryConfigTargetsBigQueryTargetOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataLossPreventionDiscoveryConfigTargetsBigQueryTarget | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTarget | undefined);
    private _cadence;
    get cadence(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadenceOutputReference;
    putCadence(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence): void;
    resetCadence(): void;
    get cadenceInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetCadence | undefined;
    private _conditions;
    get conditions(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditionsOutputReference;
    putConditions(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions): void;
    resetConditions(): void;
    get conditionsInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetConditions | undefined;
    private _disabled;
    get disabled(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabledOutputReference;
    putDisabled(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled): void;
    resetDisabled(): void;
    get disabledInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetDisabled | undefined;
    private _filter;
    get filter(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilterOutputReference;
    putFilter(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter): void;
    resetFilter(): void;
    get filterInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetFilter | undefined;
}
export interface DataLossPreventionDiscoveryConfigTargets {
    /**
    * big_query_target block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#big_query_target DataLossPreventionDiscoveryConfig#big_query_target}
    */
    readonly bigQueryTarget?: DataLossPreventionDiscoveryConfigTargetsBigQueryTarget;
}
export declare function dataLossPreventionDiscoveryConfigTargetsToTerraform(struct?: DataLossPreventionDiscoveryConfigTargets | cdktf.IResolvable): any;
export declare function dataLossPreventionDiscoveryConfigTargetsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTargets | cdktf.IResolvable): any;
export declare class DataLossPreventionDiscoveryConfigTargetsOutputReference 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(): DataLossPreventionDiscoveryConfigTargets | cdktf.IResolvable | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTargets | cdktf.IResolvable | undefined);
    private _bigQueryTarget;
    get bigQueryTarget(): DataLossPreventionDiscoveryConfigTargetsBigQueryTargetOutputReference;
    putBigQueryTarget(value: DataLossPreventionDiscoveryConfigTargetsBigQueryTarget): void;
    resetBigQueryTarget(): void;
    get bigQueryTargetInput(): DataLossPreventionDiscoveryConfigTargetsBigQueryTarget | undefined;
}
export declare class DataLossPreventionDiscoveryConfigTargetsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataLossPreventionDiscoveryConfigTargets[] | 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): DataLossPreventionDiscoveryConfigTargetsOutputReference;
}
export interface DataLossPreventionDiscoveryConfigTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#create DataLossPreventionDiscoveryConfig#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#delete DataLossPreventionDiscoveryConfig#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#update DataLossPreventionDiscoveryConfig#update}
    */
    readonly update?: string;
}
export declare function dataLossPreventionDiscoveryConfigTimeoutsToTerraform(struct?: DataLossPreventionDiscoveryConfigTimeouts | cdktf.IResolvable): any;
export declare function dataLossPreventionDiscoveryConfigTimeoutsToHclTerraform(struct?: DataLossPreventionDiscoveryConfigTimeouts | cdktf.IResolvable): any;
export declare class DataLossPreventionDiscoveryConfigTimeoutsOutputReference 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(): DataLossPreventionDiscoveryConfigTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: DataLossPreventionDiscoveryConfigTimeouts | cdktf.IResolvable | undefined);
    private _create?;
    get create(): string;
    set create(value: string);
    resetCreate(): void;
    get createInput(): string | undefined;
    private _delete?;
    get delete(): string;
    set delete(value: string);
    resetDelete(): void;
    get deleteInput(): string | undefined;
    private _update?;
    get update(): string;
    set update(value: string);
    resetUpdate(): void;
    get updateInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config google_data_loss_prevention_discovery_config}
*/
export declare class DataLossPreventionDiscoveryConfig extends cdktf.TerraformResource {
    static readonly tfResourceType = "google_data_loss_prevention_discovery_config";
    /**
    * Generates CDKTF code for importing a DataLossPreventionDiscoveryConfig resource upon running "cdktf plan <stack-name>"
    * @param scope The scope in which to define this construct
    * @param importToId The construct id used in the generated config for the DataLossPreventionDiscoveryConfig to import
    * @param importFromId The id of the existing DataLossPreventionDiscoveryConfig that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataLossPreventionDiscoveryConfig 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/hashicorp/google/5.29.1/docs/resources/data_loss_prevention_discovery_config google_data_loss_prevention_discovery_config} 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 DataLossPreventionDiscoveryConfigConfig
    */
    constructor(scope: Construct, id: string, config: DataLossPreventionDiscoveryConfigConfig);
    get createTime(): string;
    private _displayName?;
    get displayName(): string;
    set displayName(value: string);
    resetDisplayName(): void;
    get displayNameInput(): string | undefined;
    private _errors;
    get errors(): DataLossPreventionDiscoveryConfigErrorsList;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _inspectTemplates?;
    get inspectTemplates(): string[];
    set inspectTemplates(value: string[]);
    resetInspectTemplates(): void;
    get inspectTemplatesInput(): string[] | undefined;
    get lastRunTime(): string;
    private _location?;
    get location(): string;
    set location(value: string);
    get locationInput(): string | undefined;
    get name(): string;
    private _parent?;
    get parent(): string;
    set parent(value: string);
    get parentInput(): string | undefined;
    private _status?;
    get status(): string;
    set status(value: string);
    resetStatus(): void;
    get statusInput(): string | undefined;
    get updateTime(): string;
    private _actions;
    get actions(): DataLossPreventionDiscoveryConfigActionsList;
    putActions(value: DataLossPreventionDiscoveryConfigActions[] | cdktf.IResolvable): void;
    resetActions(): void;
    get actionsInput(): cdktf.IResolvable | DataLossPreventionDiscoveryConfigActions[] | undefined;
    private _orgConfig;
    get orgConfig(): DataLossPreventionDiscoveryConfigOrgConfigOutputReference;
    putOrgConfig(value: DataLossPreventionDiscoveryConfigOrgConfig): void;
    resetOrgConfig(): void;
    get orgConfigInput(): DataLossPreventionDiscoveryConfigOrgConfig | undefined;
    private _targets;
    get targets(): DataLossPreventionDiscoveryConfigTargetsList;
    putTargets(value: DataLossPreventionDiscoveryConfigTargets[] | cdktf.IResolvable): void;
    resetTargets(): void;
    get targetsInput(): cdktf.IResolvable | DataLossPreventionDiscoveryConfigTargets[] | undefined;
    private _timeouts;
    get timeouts(): DataLossPreventionDiscoveryConfigTimeoutsOutputReference;
    putTimeouts(value: DataLossPreventionDiscoveryConfigTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | DataLossPreventionDiscoveryConfigTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
