/**
 * Copyright (c) HashiCorp, Inc.
 * SPDX-License-Identifier: MPL-2.0
 */
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataDatabricksTableConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#id DataDatabricksTable#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;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#name DataDatabricksTable#name}
    */
    readonly name: string;
    /**
    * table_info block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#table_info DataDatabricksTable#table_info}
    */
    readonly tableInfo?: DataDatabricksTableTableInfo;
}
export interface DataDatabricksTableTableInfoColumnsMask {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#function_name DataDatabricksTable#function_name}
    */
    readonly functionName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#using_column_names DataDatabricksTable#using_column_names}
    */
    readonly usingColumnNames?: string[];
}
export declare function dataDatabricksTableTableInfoColumnsMaskToTerraform(struct?: DataDatabricksTableTableInfoColumnsMaskOutputReference | DataDatabricksTableTableInfoColumnsMask): any;
export declare function dataDatabricksTableTableInfoColumnsMaskToHclTerraform(struct?: DataDatabricksTableTableInfoColumnsMaskOutputReference | DataDatabricksTableTableInfoColumnsMask): any;
export declare class DataDatabricksTableTableInfoColumnsMaskOutputReference 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(): DataDatabricksTableTableInfoColumnsMask | undefined;
    set internalValue(value: DataDatabricksTableTableInfoColumnsMask | undefined);
    private _functionName?;
    get functionName(): string;
    set functionName(value: string);
    resetFunctionName(): void;
    get functionNameInput(): string | undefined;
    private _usingColumnNames?;
    get usingColumnNames(): string[];
    set usingColumnNames(value: string[]);
    resetUsingColumnNames(): void;
    get usingColumnNamesInput(): string[] | undefined;
}
export interface DataDatabricksTableTableInfoColumns {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#comment DataDatabricksTable#comment}
    */
    readonly comment?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#name DataDatabricksTable#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#nullable DataDatabricksTable#nullable}
    */
    readonly nullable?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#partition_index DataDatabricksTable#partition_index}
    */
    readonly partitionIndex?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#position DataDatabricksTable#position}
    */
    readonly position?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#type_interval_type DataDatabricksTable#type_interval_type}
    */
    readonly typeIntervalType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#type_json DataDatabricksTable#type_json}
    */
    readonly typeJson?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#type_name DataDatabricksTable#type_name}
    */
    readonly typeName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#type_precision DataDatabricksTable#type_precision}
    */
    readonly typePrecision?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#type_scale DataDatabricksTable#type_scale}
    */
    readonly typeScale?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#type_text DataDatabricksTable#type_text}
    */
    readonly typeText?: string;
    /**
    * mask block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#mask DataDatabricksTable#mask}
    */
    readonly mask?: DataDatabricksTableTableInfoColumnsMask;
}
export declare function dataDatabricksTableTableInfoColumnsToTerraform(struct?: DataDatabricksTableTableInfoColumns | cdktf.IResolvable): any;
export declare function dataDatabricksTableTableInfoColumnsToHclTerraform(struct?: DataDatabricksTableTableInfoColumns | cdktf.IResolvable): any;
export declare class DataDatabricksTableTableInfoColumnsOutputReference 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(): DataDatabricksTableTableInfoColumns | cdktf.IResolvable | undefined;
    set internalValue(value: DataDatabricksTableTableInfoColumns | cdktf.IResolvable | undefined);
    private _comment?;
    get comment(): string;
    set comment(value: string);
    resetComment(): void;
    get commentInput(): string | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _nullable?;
    get nullable(): boolean | cdktf.IResolvable;
    set nullable(value: boolean | cdktf.IResolvable);
    resetNullable(): void;
    get nullableInput(): boolean | cdktf.IResolvable | undefined;
    private _partitionIndex?;
    get partitionIndex(): number;
    set partitionIndex(value: number);
    resetPartitionIndex(): void;
    get partitionIndexInput(): number | undefined;
    private _position?;
    get position(): number;
    set position(value: number);
    resetPosition(): void;
    get positionInput(): number | undefined;
    private _typeIntervalType?;
    get typeIntervalType(): string;
    set typeIntervalType(value: string);
    resetTypeIntervalType(): void;
    get typeIntervalTypeInput(): string | undefined;
    private _typeJson?;
    get typeJson(): string;
    set typeJson(value: string);
    resetTypeJson(): void;
    get typeJsonInput(): string | undefined;
    private _typeName?;
    get typeName(): string;
    set typeName(value: string);
    resetTypeName(): void;
    get typeNameInput(): string | undefined;
    private _typePrecision?;
    get typePrecision(): number;
    set typePrecision(value: number);
    resetTypePrecision(): void;
    get typePrecisionInput(): number | undefined;
    private _typeScale?;
    get typeScale(): number;
    set typeScale(value: number);
    resetTypeScale(): void;
    get typeScaleInput(): number | undefined;
    private _typeText?;
    get typeText(): string;
    set typeText(value: string);
    resetTypeText(): void;
    get typeTextInput(): string | undefined;
    private _mask;
    get mask(): DataDatabricksTableTableInfoColumnsMaskOutputReference;
    putMask(value: DataDatabricksTableTableInfoColumnsMask): void;
    resetMask(): void;
    get maskInput(): DataDatabricksTableTableInfoColumnsMask | undefined;
}
export declare class DataDatabricksTableTableInfoColumnsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataDatabricksTableTableInfoColumns[] | 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): DataDatabricksTableTableInfoColumnsOutputReference;
}
export interface DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#delta_runtime_properties DataDatabricksTable#delta_runtime_properties}
    */
    readonly deltaRuntimeProperties: {
        [key: string]: string;
    };
}
export declare function dataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairsToTerraform(struct?: DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairsOutputReference | DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs): any;
export declare function dataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairsToHclTerraform(struct?: DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairsOutputReference | DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs): any;
export declare class DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairsOutputReference 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(): DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs | undefined;
    set internalValue(value: DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs | undefined);
    private _deltaRuntimeProperties?;
    get deltaRuntimeProperties(): {
        [key: string]: string;
    };
    set deltaRuntimeProperties(value: {
        [key: string]: string;
    });
    get deltaRuntimePropertiesInput(): {
        [key: string]: string;
    } | undefined;
}
export interface DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#inherited_from_name DataDatabricksTable#inherited_from_name}
    */
    readonly inheritedFromName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#inherited_from_type DataDatabricksTable#inherited_from_type}
    */
    readonly inheritedFromType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#value DataDatabricksTable#value}
    */
    readonly value: string;
}
export declare function dataDatabricksTableTableInfoEffectivePredictiveOptimizationFlagToTerraform(struct?: DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlagOutputReference | DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag): any;
export declare function dataDatabricksTableTableInfoEffectivePredictiveOptimizationFlagToHclTerraform(struct?: DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlagOutputReference | DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag): any;
export declare class DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlagOutputReference 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(): DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag | undefined;
    set internalValue(value: DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag | undefined);
    private _inheritedFromName?;
    get inheritedFromName(): string;
    set inheritedFromName(value: string);
    resetInheritedFromName(): void;
    get inheritedFromNameInput(): string | undefined;
    private _inheritedFromType?;
    get inheritedFromType(): string;
    set inheritedFromType(value: string);
    resetInheritedFromType(): void;
    get inheritedFromTypeInput(): string | undefined;
    private _value?;
    get value(): string;
    set value(value: string);
    get valueInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#algorithm DataDatabricksTable#algorithm}
    */
    readonly algorithm?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#aws_kms_key_arn DataDatabricksTable#aws_kms_key_arn}
    */
    readonly awsKmsKeyArn?: string;
}
export declare function dataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetailsToTerraform(struct?: DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetailsOutputReference | DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails): any;
export declare function dataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetailsToHclTerraform(struct?: DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetailsOutputReference | DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails): any;
export declare class DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetailsOutputReference 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(): DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails | undefined;
    set internalValue(value: DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails | undefined);
    private _algorithm?;
    get algorithm(): string;
    set algorithm(value: string);
    resetAlgorithm(): void;
    get algorithmInput(): string | undefined;
    private _awsKmsKeyArn?;
    get awsKmsKeyArn(): string;
    set awsKmsKeyArn(value: string);
    resetAwsKmsKeyArn(): void;
    get awsKmsKeyArnInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoEncryptionDetails {
    /**
    * sse_encryption_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#sse_encryption_details DataDatabricksTable#sse_encryption_details}
    */
    readonly sseEncryptionDetails?: DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails;
}
export declare function dataDatabricksTableTableInfoEncryptionDetailsToTerraform(struct?: DataDatabricksTableTableInfoEncryptionDetailsOutputReference | DataDatabricksTableTableInfoEncryptionDetails): any;
export declare function dataDatabricksTableTableInfoEncryptionDetailsToHclTerraform(struct?: DataDatabricksTableTableInfoEncryptionDetailsOutputReference | DataDatabricksTableTableInfoEncryptionDetails): any;
export declare class DataDatabricksTableTableInfoEncryptionDetailsOutputReference 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(): DataDatabricksTableTableInfoEncryptionDetails | undefined;
    set internalValue(value: DataDatabricksTableTableInfoEncryptionDetails | undefined);
    private _sseEncryptionDetails;
    get sseEncryptionDetails(): DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetailsOutputReference;
    putSseEncryptionDetails(value: DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails): void;
    resetSseEncryptionDetails(): void;
    get sseEncryptionDetailsInput(): DataDatabricksTableTableInfoEncryptionDetailsSseEncryptionDetails | undefined;
}
export interface DataDatabricksTableTableInfoRowFilter {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#function_name DataDatabricksTable#function_name}
    */
    readonly functionName: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#input_column_names DataDatabricksTable#input_column_names}
    */
    readonly inputColumnNames: string[];
}
export declare function dataDatabricksTableTableInfoRowFilterToTerraform(struct?: DataDatabricksTableTableInfoRowFilterOutputReference | DataDatabricksTableTableInfoRowFilter): any;
export declare function dataDatabricksTableTableInfoRowFilterToHclTerraform(struct?: DataDatabricksTableTableInfoRowFilterOutputReference | DataDatabricksTableTableInfoRowFilter): any;
export declare class DataDatabricksTableTableInfoRowFilterOutputReference 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(): DataDatabricksTableTableInfoRowFilter | undefined;
    set internalValue(value: DataDatabricksTableTableInfoRowFilter | undefined);
    private _functionName?;
    get functionName(): string;
    set functionName(value: string);
    get functionNameInput(): string | undefined;
    private _inputColumnNames?;
    get inputColumnNames(): string[];
    set inputColumnNames(value: string[]);
    get inputColumnNamesInput(): string[] | undefined;
}
export interface DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#child_columns DataDatabricksTable#child_columns}
    */
    readonly childColumns: string[];
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#name DataDatabricksTable#name}
    */
    readonly name: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#parent_columns DataDatabricksTable#parent_columns}
    */
    readonly parentColumns: string[];
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#parent_table DataDatabricksTable#parent_table}
    */
    readonly parentTable: string;
}
export declare function dataDatabricksTableTableInfoTableConstraintsForeignKeyConstraintToTerraform(struct?: DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraintOutputReference | DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint): any;
export declare function dataDatabricksTableTableInfoTableConstraintsForeignKeyConstraintToHclTerraform(struct?: DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraintOutputReference | DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint): any;
export declare class DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraintOutputReference 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(): DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint | undefined;
    set internalValue(value: DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint | undefined);
    private _childColumns?;
    get childColumns(): string[];
    set childColumns(value: string[]);
    get childColumnsInput(): string[] | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
    private _parentColumns?;
    get parentColumns(): string[];
    set parentColumns(value: string[]);
    get parentColumnsInput(): string[] | undefined;
    private _parentTable?;
    get parentTable(): string;
    set parentTable(value: string);
    get parentTableInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#name DataDatabricksTable#name}
    */
    readonly name: string;
}
export declare function dataDatabricksTableTableInfoTableConstraintsNamedTableConstraintToTerraform(struct?: DataDatabricksTableTableInfoTableConstraintsNamedTableConstraintOutputReference | DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint): any;
export declare function dataDatabricksTableTableInfoTableConstraintsNamedTableConstraintToHclTerraform(struct?: DataDatabricksTableTableInfoTableConstraintsNamedTableConstraintOutputReference | DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint): any;
export declare class DataDatabricksTableTableInfoTableConstraintsNamedTableConstraintOutputReference 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(): DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint | undefined;
    set internalValue(value: DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#child_columns DataDatabricksTable#child_columns}
    */
    readonly childColumns: string[];
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#name DataDatabricksTable#name}
    */
    readonly name: string;
}
export declare function dataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraintToTerraform(struct?: DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraintOutputReference | DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint): any;
export declare function dataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraintToHclTerraform(struct?: DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraintOutputReference | DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint): any;
export declare class DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraintOutputReference 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(): DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint | undefined;
    set internalValue(value: DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint | undefined);
    private _childColumns?;
    get childColumns(): string[];
    set childColumns(value: string[]);
    get childColumnsInput(): string[] | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoTableConstraints {
    /**
    * foreign_key_constraint block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#foreign_key_constraint DataDatabricksTable#foreign_key_constraint}
    */
    readonly foreignKeyConstraint?: DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint;
    /**
    * named_table_constraint block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#named_table_constraint DataDatabricksTable#named_table_constraint}
    */
    readonly namedTableConstraint?: DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint;
    /**
    * primary_key_constraint block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#primary_key_constraint DataDatabricksTable#primary_key_constraint}
    */
    readonly primaryKeyConstraint?: DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint;
}
export declare function dataDatabricksTableTableInfoTableConstraintsToTerraform(struct?: DataDatabricksTableTableInfoTableConstraints | cdktf.IResolvable): any;
export declare function dataDatabricksTableTableInfoTableConstraintsToHclTerraform(struct?: DataDatabricksTableTableInfoTableConstraints | cdktf.IResolvable): any;
export declare class DataDatabricksTableTableInfoTableConstraintsOutputReference 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(): DataDatabricksTableTableInfoTableConstraints | cdktf.IResolvable | undefined;
    set internalValue(value: DataDatabricksTableTableInfoTableConstraints | cdktf.IResolvable | undefined);
    private _foreignKeyConstraint;
    get foreignKeyConstraint(): DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraintOutputReference;
    putForeignKeyConstraint(value: DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint): void;
    resetForeignKeyConstraint(): void;
    get foreignKeyConstraintInput(): DataDatabricksTableTableInfoTableConstraintsForeignKeyConstraint | undefined;
    private _namedTableConstraint;
    get namedTableConstraint(): DataDatabricksTableTableInfoTableConstraintsNamedTableConstraintOutputReference;
    putNamedTableConstraint(value: DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint): void;
    resetNamedTableConstraint(): void;
    get namedTableConstraintInput(): DataDatabricksTableTableInfoTableConstraintsNamedTableConstraint | undefined;
    private _primaryKeyConstraint;
    get primaryKeyConstraint(): DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraintOutputReference;
    putPrimaryKeyConstraint(value: DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint): void;
    resetPrimaryKeyConstraint(): void;
    get primaryKeyConstraintInput(): DataDatabricksTableTableInfoTableConstraintsPrimaryKeyConstraint | undefined;
}
export declare class DataDatabricksTableTableInfoTableConstraintsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataDatabricksTableTableInfoTableConstraints[] | 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): DataDatabricksTableTableInfoTableConstraintsOutputReference;
}
export interface DataDatabricksTableTableInfoViewDependenciesDependenciesFunction {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#function_full_name DataDatabricksTable#function_full_name}
    */
    readonly functionFullName: string;
}
export declare function dataDatabricksTableTableInfoViewDependenciesDependenciesFunctionToTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesDependenciesFunctionOutputReference | DataDatabricksTableTableInfoViewDependenciesDependenciesFunction): any;
export declare function dataDatabricksTableTableInfoViewDependenciesDependenciesFunctionToHclTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesDependenciesFunctionOutputReference | DataDatabricksTableTableInfoViewDependenciesDependenciesFunction): any;
export declare class DataDatabricksTableTableInfoViewDependenciesDependenciesFunctionOutputReference 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(): DataDatabricksTableTableInfoViewDependenciesDependenciesFunction | undefined;
    set internalValue(value: DataDatabricksTableTableInfoViewDependenciesDependenciesFunction | undefined);
    private _functionFullName?;
    get functionFullName(): string;
    set functionFullName(value: string);
    get functionFullNameInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoViewDependenciesDependenciesTable {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#table_full_name DataDatabricksTable#table_full_name}
    */
    readonly tableFullName: string;
}
export declare function dataDatabricksTableTableInfoViewDependenciesDependenciesTableToTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesDependenciesTableOutputReference | DataDatabricksTableTableInfoViewDependenciesDependenciesTable): any;
export declare function dataDatabricksTableTableInfoViewDependenciesDependenciesTableToHclTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesDependenciesTableOutputReference | DataDatabricksTableTableInfoViewDependenciesDependenciesTable): any;
export declare class DataDatabricksTableTableInfoViewDependenciesDependenciesTableOutputReference 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(): DataDatabricksTableTableInfoViewDependenciesDependenciesTable | undefined;
    set internalValue(value: DataDatabricksTableTableInfoViewDependenciesDependenciesTable | undefined);
    private _tableFullName?;
    get tableFullName(): string;
    set tableFullName(value: string);
    get tableFullNameInput(): string | undefined;
}
export interface DataDatabricksTableTableInfoViewDependenciesDependencies {
    /**
    * function block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#function DataDatabricksTable#function}
    */
    readonly function?: DataDatabricksTableTableInfoViewDependenciesDependenciesFunction;
    /**
    * table block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#table DataDatabricksTable#table}
    */
    readonly table?: DataDatabricksTableTableInfoViewDependenciesDependenciesTable;
}
export declare function dataDatabricksTableTableInfoViewDependenciesDependenciesToTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesDependencies | cdktf.IResolvable): any;
export declare function dataDatabricksTableTableInfoViewDependenciesDependenciesToHclTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesDependencies | cdktf.IResolvable): any;
export declare class DataDatabricksTableTableInfoViewDependenciesDependenciesOutputReference 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(): DataDatabricksTableTableInfoViewDependenciesDependencies | cdktf.IResolvable | undefined;
    set internalValue(value: DataDatabricksTableTableInfoViewDependenciesDependencies | cdktf.IResolvable | undefined);
    private _function;
    get function(): DataDatabricksTableTableInfoViewDependenciesDependenciesFunctionOutputReference;
    putFunction(value: DataDatabricksTableTableInfoViewDependenciesDependenciesFunction): void;
    resetFunction(): void;
    get functionInput(): DataDatabricksTableTableInfoViewDependenciesDependenciesFunction | undefined;
    private _table;
    get table(): DataDatabricksTableTableInfoViewDependenciesDependenciesTableOutputReference;
    putTable(value: DataDatabricksTableTableInfoViewDependenciesDependenciesTable): void;
    resetTable(): void;
    get tableInput(): DataDatabricksTableTableInfoViewDependenciesDependenciesTable | undefined;
}
export declare class DataDatabricksTableTableInfoViewDependenciesDependenciesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataDatabricksTableTableInfoViewDependenciesDependencies[] | 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): DataDatabricksTableTableInfoViewDependenciesDependenciesOutputReference;
}
export interface DataDatabricksTableTableInfoViewDependencies {
    /**
    * dependencies block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#dependencies DataDatabricksTable#dependencies}
    */
    readonly dependencies?: DataDatabricksTableTableInfoViewDependenciesDependencies[] | cdktf.IResolvable;
}
export declare function dataDatabricksTableTableInfoViewDependenciesToTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesOutputReference | DataDatabricksTableTableInfoViewDependencies): any;
export declare function dataDatabricksTableTableInfoViewDependenciesToHclTerraform(struct?: DataDatabricksTableTableInfoViewDependenciesOutputReference | DataDatabricksTableTableInfoViewDependencies): any;
export declare class DataDatabricksTableTableInfoViewDependenciesOutputReference 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(): DataDatabricksTableTableInfoViewDependencies | undefined;
    set internalValue(value: DataDatabricksTableTableInfoViewDependencies | undefined);
    private _dependencies;
    get dependencies(): DataDatabricksTableTableInfoViewDependenciesDependenciesList;
    putDependencies(value: DataDatabricksTableTableInfoViewDependenciesDependencies[] | cdktf.IResolvable): void;
    resetDependencies(): void;
    get dependenciesInput(): cdktf.IResolvable | DataDatabricksTableTableInfoViewDependenciesDependencies[] | undefined;
}
export interface DataDatabricksTableTableInfo {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#access_point DataDatabricksTable#access_point}
    */
    readonly accessPoint?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#browse_only DataDatabricksTable#browse_only}
    */
    readonly browseOnly?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#catalog_name DataDatabricksTable#catalog_name}
    */
    readonly catalogName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#comment DataDatabricksTable#comment}
    */
    readonly comment?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#created_at DataDatabricksTable#created_at}
    */
    readonly createdAt?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#created_by DataDatabricksTable#created_by}
    */
    readonly createdBy?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#data_access_configuration_id DataDatabricksTable#data_access_configuration_id}
    */
    readonly dataAccessConfigurationId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#data_source_format DataDatabricksTable#data_source_format}
    */
    readonly dataSourceFormat?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#deleted_at DataDatabricksTable#deleted_at}
    */
    readonly deletedAt?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#enable_predictive_optimization DataDatabricksTable#enable_predictive_optimization}
    */
    readonly enablePredictiveOptimization?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#full_name DataDatabricksTable#full_name}
    */
    readonly fullName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#metastore_id DataDatabricksTable#metastore_id}
    */
    readonly metastoreId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#name DataDatabricksTable#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#owner DataDatabricksTable#owner}
    */
    readonly owner?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#pipeline_id DataDatabricksTable#pipeline_id}
    */
    readonly pipelineId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#properties DataDatabricksTable#properties}
    */
    readonly properties?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#schema_name DataDatabricksTable#schema_name}
    */
    readonly schemaName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#sql_path DataDatabricksTable#sql_path}
    */
    readonly sqlPath?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#storage_credential_name DataDatabricksTable#storage_credential_name}
    */
    readonly storageCredentialName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#storage_location DataDatabricksTable#storage_location}
    */
    readonly storageLocation?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#table_id DataDatabricksTable#table_id}
    */
    readonly tableId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#table_type DataDatabricksTable#table_type}
    */
    readonly tableType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#updated_at DataDatabricksTable#updated_at}
    */
    readonly updatedAt?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#updated_by DataDatabricksTable#updated_by}
    */
    readonly updatedBy?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#view_definition DataDatabricksTable#view_definition}
    */
    readonly viewDefinition?: string;
    /**
    * columns block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#columns DataDatabricksTable#columns}
    */
    readonly columns?: DataDatabricksTableTableInfoColumns[] | cdktf.IResolvable;
    /**
    * delta_runtime_properties_kvpairs block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#delta_runtime_properties_kvpairs DataDatabricksTable#delta_runtime_properties_kvpairs}
    */
    readonly deltaRuntimePropertiesKvpairs?: DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs;
    /**
    * effective_predictive_optimization_flag block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#effective_predictive_optimization_flag DataDatabricksTable#effective_predictive_optimization_flag}
    */
    readonly effectivePredictiveOptimizationFlag?: DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag;
    /**
    * encryption_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#encryption_details DataDatabricksTable#encryption_details}
    */
    readonly encryptionDetails?: DataDatabricksTableTableInfoEncryptionDetails;
    /**
    * row_filter block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#row_filter DataDatabricksTable#row_filter}
    */
    readonly rowFilter?: DataDatabricksTableTableInfoRowFilter;
    /**
    * table_constraints block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#table_constraints DataDatabricksTable#table_constraints}
    */
    readonly tableConstraints?: DataDatabricksTableTableInfoTableConstraints[] | cdktf.IResolvable;
    /**
    * view_dependencies block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#view_dependencies DataDatabricksTable#view_dependencies}
    */
    readonly viewDependencies?: DataDatabricksTableTableInfoViewDependencies;
}
export declare function dataDatabricksTableTableInfoToTerraform(struct?: DataDatabricksTableTableInfoOutputReference | DataDatabricksTableTableInfo): any;
export declare function dataDatabricksTableTableInfoToHclTerraform(struct?: DataDatabricksTableTableInfoOutputReference | DataDatabricksTableTableInfo): any;
export declare class DataDatabricksTableTableInfoOutputReference 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(): DataDatabricksTableTableInfo | undefined;
    set internalValue(value: DataDatabricksTableTableInfo | undefined);
    private _accessPoint?;
    get accessPoint(): string;
    set accessPoint(value: string);
    resetAccessPoint(): void;
    get accessPointInput(): string | undefined;
    private _browseOnly?;
    get browseOnly(): boolean | cdktf.IResolvable;
    set browseOnly(value: boolean | cdktf.IResolvable);
    resetBrowseOnly(): void;
    get browseOnlyInput(): boolean | cdktf.IResolvable | undefined;
    private _catalogName?;
    get catalogName(): string;
    set catalogName(value: string);
    resetCatalogName(): void;
    get catalogNameInput(): string | undefined;
    private _comment?;
    get comment(): string;
    set comment(value: string);
    resetComment(): void;
    get commentInput(): string | undefined;
    private _createdAt?;
    get createdAt(): number;
    set createdAt(value: number);
    resetCreatedAt(): void;
    get createdAtInput(): number | undefined;
    private _createdBy?;
    get createdBy(): string;
    set createdBy(value: string);
    resetCreatedBy(): void;
    get createdByInput(): string | undefined;
    private _dataAccessConfigurationId?;
    get dataAccessConfigurationId(): string;
    set dataAccessConfigurationId(value: string);
    resetDataAccessConfigurationId(): void;
    get dataAccessConfigurationIdInput(): string | undefined;
    private _dataSourceFormat?;
    get dataSourceFormat(): string;
    set dataSourceFormat(value: string);
    resetDataSourceFormat(): void;
    get dataSourceFormatInput(): string | undefined;
    private _deletedAt?;
    get deletedAt(): number;
    set deletedAt(value: number);
    resetDeletedAt(): void;
    get deletedAtInput(): number | undefined;
    private _enablePredictiveOptimization?;
    get enablePredictiveOptimization(): string;
    set enablePredictiveOptimization(value: string);
    resetEnablePredictiveOptimization(): void;
    get enablePredictiveOptimizationInput(): string | undefined;
    private _fullName?;
    get fullName(): string;
    set fullName(value: string);
    resetFullName(): void;
    get fullNameInput(): string | undefined;
    private _metastoreId?;
    get metastoreId(): string;
    set metastoreId(value: string);
    resetMetastoreId(): void;
    get metastoreIdInput(): string | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _owner?;
    get owner(): string;
    set owner(value: string);
    resetOwner(): void;
    get ownerInput(): string | undefined;
    private _pipelineId?;
    get pipelineId(): string;
    set pipelineId(value: string);
    resetPipelineId(): void;
    get pipelineIdInput(): string | undefined;
    private _properties?;
    get properties(): {
        [key: string]: string;
    };
    set properties(value: {
        [key: string]: string;
    });
    resetProperties(): void;
    get propertiesInput(): {
        [key: string]: string;
    } | undefined;
    private _schemaName?;
    get schemaName(): string;
    set schemaName(value: string);
    resetSchemaName(): void;
    get schemaNameInput(): string | undefined;
    private _sqlPath?;
    get sqlPath(): string;
    set sqlPath(value: string);
    resetSqlPath(): void;
    get sqlPathInput(): string | undefined;
    private _storageCredentialName?;
    get storageCredentialName(): string;
    set storageCredentialName(value: string);
    resetStorageCredentialName(): void;
    get storageCredentialNameInput(): string | undefined;
    private _storageLocation?;
    get storageLocation(): string;
    set storageLocation(value: string);
    resetStorageLocation(): void;
    get storageLocationInput(): string | undefined;
    private _tableId?;
    get tableId(): string;
    set tableId(value: string);
    resetTableId(): void;
    get tableIdInput(): string | undefined;
    private _tableType?;
    get tableType(): string;
    set tableType(value: string);
    resetTableType(): void;
    get tableTypeInput(): string | undefined;
    private _updatedAt?;
    get updatedAt(): number;
    set updatedAt(value: number);
    resetUpdatedAt(): void;
    get updatedAtInput(): number | undefined;
    private _updatedBy?;
    get updatedBy(): string;
    set updatedBy(value: string);
    resetUpdatedBy(): void;
    get updatedByInput(): string | undefined;
    private _viewDefinition?;
    get viewDefinition(): string;
    set viewDefinition(value: string);
    resetViewDefinition(): void;
    get viewDefinitionInput(): string | undefined;
    private _columns;
    get columns(): DataDatabricksTableTableInfoColumnsList;
    putColumns(value: DataDatabricksTableTableInfoColumns[] | cdktf.IResolvable): void;
    resetColumns(): void;
    get columnsInput(): cdktf.IResolvable | DataDatabricksTableTableInfoColumns[] | undefined;
    private _deltaRuntimePropertiesKvpairs;
    get deltaRuntimePropertiesKvpairs(): DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairsOutputReference;
    putDeltaRuntimePropertiesKvpairs(value: DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs): void;
    resetDeltaRuntimePropertiesKvpairs(): void;
    get deltaRuntimePropertiesKvpairsInput(): DataDatabricksTableTableInfoDeltaRuntimePropertiesKvpairs | undefined;
    private _effectivePredictiveOptimizationFlag;
    get effectivePredictiveOptimizationFlag(): DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlagOutputReference;
    putEffectivePredictiveOptimizationFlag(value: DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag): void;
    resetEffectivePredictiveOptimizationFlag(): void;
    get effectivePredictiveOptimizationFlagInput(): DataDatabricksTableTableInfoEffectivePredictiveOptimizationFlag | undefined;
    private _encryptionDetails;
    get encryptionDetails(): DataDatabricksTableTableInfoEncryptionDetailsOutputReference;
    putEncryptionDetails(value: DataDatabricksTableTableInfoEncryptionDetails): void;
    resetEncryptionDetails(): void;
    get encryptionDetailsInput(): DataDatabricksTableTableInfoEncryptionDetails | undefined;
    private _rowFilter;
    get rowFilter(): DataDatabricksTableTableInfoRowFilterOutputReference;
    putRowFilter(value: DataDatabricksTableTableInfoRowFilter): void;
    resetRowFilter(): void;
    get rowFilterInput(): DataDatabricksTableTableInfoRowFilter | undefined;
    private _tableConstraints;
    get tableConstraints(): DataDatabricksTableTableInfoTableConstraintsList;
    putTableConstraints(value: DataDatabricksTableTableInfoTableConstraints[] | cdktf.IResolvable): void;
    resetTableConstraints(): void;
    get tableConstraintsInput(): cdktf.IResolvable | DataDatabricksTableTableInfoTableConstraints[] | undefined;
    private _viewDependencies;
    get viewDependencies(): DataDatabricksTableTableInfoViewDependenciesOutputReference;
    putViewDependencies(value: DataDatabricksTableTableInfoViewDependencies): void;
    resetViewDependencies(): void;
    get viewDependenciesInput(): DataDatabricksTableTableInfoViewDependencies | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table databricks_table}
*/
export declare class DataDatabricksTable extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "databricks_table";
    /**
    * Generates CDKTF code for importing a DataDatabricksTable 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 DataDatabricksTable to import
    * @param importFromId The id of the existing DataDatabricksTable that should be imported. Refer to the {@link https://registry.terraform.io/providers/databricks/databricks/1.71.0/docs/data-sources/table#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataDatabricksTable 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/databricks/databricks/1.71.0/docs/data-sources/table databricks_table} Data Source
    *
    * @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 DataDatabricksTableConfig
    */
    constructor(scope: Construct, id: string, config: DataDatabricksTableConfig);
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
    private _tableInfo;
    get tableInfo(): DataDatabricksTableTableInfoOutputReference;
    putTableInfo(value: DataDatabricksTableTableInfo): void;
    resetTableInfo(): void;
    get tableInfoInput(): DataDatabricksTableTableInfo | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
