/**
 * Copyright (c) HashiCorp, Inc.
 * SPDX-License-Identifier: MPL-2.0
 */
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface CleanRoomAssetConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#asset_type CleanRoomAsset#asset_type}
    */
    readonly assetType: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#clean_room_name CleanRoomAsset#clean_room_name}
    */
    readonly cleanRoomName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#foreign_table CleanRoomAsset#foreign_table}
    */
    readonly foreignTable?: CleanRoomAssetForeignTable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#foreign_table_local_details CleanRoomAsset#foreign_table_local_details}
    */
    readonly foreignTableLocalDetails?: CleanRoomAssetForeignTableLocalDetails;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#name CleanRoomAsset#name}
    */
    readonly name: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#notebook CleanRoomAsset#notebook}
    */
    readonly notebook?: CleanRoomAssetNotebook;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#table CleanRoomAsset#table}
    */
    readonly table?: CleanRoomAssetTable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#table_local_details CleanRoomAsset#table_local_details}
    */
    readonly tableLocalDetails?: CleanRoomAssetTableLocalDetails;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#view CleanRoomAsset#view}
    */
    readonly view?: CleanRoomAssetView;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#view_local_details CleanRoomAsset#view_local_details}
    */
    readonly viewLocalDetails?: CleanRoomAssetViewLocalDetails;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#volume_local_details CleanRoomAsset#volume_local_details}
    */
    readonly volumeLocalDetails?: CleanRoomAssetVolumeLocalDetails;
}
export interface CleanRoomAssetForeignTableColumnsMask {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#function_name CleanRoomAsset#function_name}
    */
    readonly functionName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#using_column_names CleanRoomAsset#using_column_names}
    */
    readonly usingColumnNames?: string[];
}
export declare function cleanRoomAssetForeignTableColumnsMaskToTerraform(struct?: CleanRoomAssetForeignTableColumnsMask | cdktf.IResolvable): any;
export declare function cleanRoomAssetForeignTableColumnsMaskToHclTerraform(struct?: CleanRoomAssetForeignTableColumnsMask | cdktf.IResolvable): any;
export declare class CleanRoomAssetForeignTableColumnsMaskOutputReference 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(): CleanRoomAssetForeignTableColumnsMask | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetForeignTableColumnsMask | cdktf.IResolvable | 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 CleanRoomAssetForeignTableColumns {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#comment CleanRoomAsset#comment}
    */
    readonly comment?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#mask CleanRoomAsset#mask}
    */
    readonly mask?: CleanRoomAssetForeignTableColumnsMask;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#name CleanRoomAsset#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#nullable CleanRoomAsset#nullable}
    */
    readonly nullable?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#partition_index CleanRoomAsset#partition_index}
    */
    readonly partitionIndex?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#position CleanRoomAsset#position}
    */
    readonly position?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_interval_type CleanRoomAsset#type_interval_type}
    */
    readonly typeIntervalType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_json CleanRoomAsset#type_json}
    */
    readonly typeJson?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_name CleanRoomAsset#type_name}
    */
    readonly typeName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_precision CleanRoomAsset#type_precision}
    */
    readonly typePrecision?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_scale CleanRoomAsset#type_scale}
    */
    readonly typeScale?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_text CleanRoomAsset#type_text}
    */
    readonly typeText?: string;
}
export declare function cleanRoomAssetForeignTableColumnsToTerraform(struct?: CleanRoomAssetForeignTableColumns): any;
export declare function cleanRoomAssetForeignTableColumnsToHclTerraform(struct?: CleanRoomAssetForeignTableColumns): any;
export declare class CleanRoomAssetForeignTableColumnsOutputReference 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(): CleanRoomAssetForeignTableColumns | undefined;
    set internalValue(value: CleanRoomAssetForeignTableColumns | undefined);
    private _comment?;
    get comment(): string;
    set comment(value: string);
    resetComment(): void;
    get commentInput(): string | undefined;
    private _mask;
    get mask(): CleanRoomAssetForeignTableColumnsMaskOutputReference;
    putMask(value: CleanRoomAssetForeignTableColumnsMask): void;
    resetMask(): void;
    get maskInput(): cdktf.IResolvable | CleanRoomAssetForeignTableColumnsMask | 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;
}
export declare class CleanRoomAssetForeignTableColumnsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: CleanRoomAssetForeignTableColumns[] | 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): CleanRoomAssetForeignTableColumnsOutputReference;
}
export interface CleanRoomAssetForeignTable {
}
export declare function cleanRoomAssetForeignTableToTerraform(struct?: CleanRoomAssetForeignTable | cdktf.IResolvable): any;
export declare function cleanRoomAssetForeignTableToHclTerraform(struct?: CleanRoomAssetForeignTable | cdktf.IResolvable): any;
export declare class CleanRoomAssetForeignTableOutputReference 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(): CleanRoomAssetForeignTable | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetForeignTable | cdktf.IResolvable | undefined);
    private _columns;
    get columns(): CleanRoomAssetForeignTableColumnsList;
}
export interface CleanRoomAssetForeignTableLocalDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#local_name CleanRoomAsset#local_name}
    */
    readonly localName: string;
}
export declare function cleanRoomAssetForeignTableLocalDetailsToTerraform(struct?: CleanRoomAssetForeignTableLocalDetails | cdktf.IResolvable): any;
export declare function cleanRoomAssetForeignTableLocalDetailsToHclTerraform(struct?: CleanRoomAssetForeignTableLocalDetails | cdktf.IResolvable): any;
export declare class CleanRoomAssetForeignTableLocalDetailsOutputReference 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(): CleanRoomAssetForeignTableLocalDetails | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetForeignTableLocalDetails | cdktf.IResolvable | undefined);
    private _localName?;
    get localName(): string;
    set localName(value: string);
    get localNameInput(): string | undefined;
}
export interface CleanRoomAssetNotebookReviews {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#comment CleanRoomAsset#comment}
    */
    readonly comment?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#created_at_millis CleanRoomAsset#created_at_millis}
    */
    readonly createdAtMillis?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#review_state CleanRoomAsset#review_state}
    */
    readonly reviewState?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#review_sub_reason CleanRoomAsset#review_sub_reason}
    */
    readonly reviewSubReason?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#reviewer_collaborator_alias CleanRoomAsset#reviewer_collaborator_alias}
    */
    readonly reviewerCollaboratorAlias?: string;
}
export declare function cleanRoomAssetNotebookReviewsToTerraform(struct?: CleanRoomAssetNotebookReviews): any;
export declare function cleanRoomAssetNotebookReviewsToHclTerraform(struct?: CleanRoomAssetNotebookReviews): any;
export declare class CleanRoomAssetNotebookReviewsOutputReference 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(): CleanRoomAssetNotebookReviews | undefined;
    set internalValue(value: CleanRoomAssetNotebookReviews | undefined);
    private _comment?;
    get comment(): string;
    set comment(value: string);
    resetComment(): void;
    get commentInput(): string | undefined;
    private _createdAtMillis?;
    get createdAtMillis(): number;
    set createdAtMillis(value: number);
    resetCreatedAtMillis(): void;
    get createdAtMillisInput(): number | undefined;
    private _reviewState?;
    get reviewState(): string;
    set reviewState(value: string);
    resetReviewState(): void;
    get reviewStateInput(): string | undefined;
    private _reviewSubReason?;
    get reviewSubReason(): string;
    set reviewSubReason(value: string);
    resetReviewSubReason(): void;
    get reviewSubReasonInput(): string | undefined;
    private _reviewerCollaboratorAlias?;
    get reviewerCollaboratorAlias(): string;
    set reviewerCollaboratorAlias(value: string);
    resetReviewerCollaboratorAlias(): void;
    get reviewerCollaboratorAliasInput(): string | undefined;
}
export declare class CleanRoomAssetNotebookReviewsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: CleanRoomAssetNotebookReviews[] | 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): CleanRoomAssetNotebookReviewsOutputReference;
}
export interface CleanRoomAssetNotebook {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#notebook_content CleanRoomAsset#notebook_content}
    */
    readonly notebookContent: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#runner_collaborator_aliases CleanRoomAsset#runner_collaborator_aliases}
    */
    readonly runnerCollaboratorAliases?: string[];
}
export declare function cleanRoomAssetNotebookToTerraform(struct?: CleanRoomAssetNotebook | cdktf.IResolvable): any;
export declare function cleanRoomAssetNotebookToHclTerraform(struct?: CleanRoomAssetNotebook | cdktf.IResolvable): any;
export declare class CleanRoomAssetNotebookOutputReference 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(): CleanRoomAssetNotebook | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetNotebook | cdktf.IResolvable | undefined);
    get etag(): string;
    private _notebookContent?;
    get notebookContent(): string;
    set notebookContent(value: string);
    get notebookContentInput(): string | undefined;
    get reviewState(): string;
    private _reviews;
    get reviews(): CleanRoomAssetNotebookReviewsList;
    private _runnerCollaboratorAliases?;
    get runnerCollaboratorAliases(): string[];
    set runnerCollaboratorAliases(value: string[]);
    resetRunnerCollaboratorAliases(): void;
    get runnerCollaboratorAliasesInput(): string[] | undefined;
}
export interface CleanRoomAssetTableColumnsMask {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#function_name CleanRoomAsset#function_name}
    */
    readonly functionName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#using_column_names CleanRoomAsset#using_column_names}
    */
    readonly usingColumnNames?: string[];
}
export declare function cleanRoomAssetTableColumnsMaskToTerraform(struct?: CleanRoomAssetTableColumnsMask | cdktf.IResolvable): any;
export declare function cleanRoomAssetTableColumnsMaskToHclTerraform(struct?: CleanRoomAssetTableColumnsMask | cdktf.IResolvable): any;
export declare class CleanRoomAssetTableColumnsMaskOutputReference 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(): CleanRoomAssetTableColumnsMask | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetTableColumnsMask | cdktf.IResolvable | 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 CleanRoomAssetTableColumns {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#comment CleanRoomAsset#comment}
    */
    readonly comment?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#mask CleanRoomAsset#mask}
    */
    readonly mask?: CleanRoomAssetTableColumnsMask;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#name CleanRoomAsset#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#nullable CleanRoomAsset#nullable}
    */
    readonly nullable?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#partition_index CleanRoomAsset#partition_index}
    */
    readonly partitionIndex?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#position CleanRoomAsset#position}
    */
    readonly position?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_interval_type CleanRoomAsset#type_interval_type}
    */
    readonly typeIntervalType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_json CleanRoomAsset#type_json}
    */
    readonly typeJson?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_name CleanRoomAsset#type_name}
    */
    readonly typeName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_precision CleanRoomAsset#type_precision}
    */
    readonly typePrecision?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_scale CleanRoomAsset#type_scale}
    */
    readonly typeScale?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_text CleanRoomAsset#type_text}
    */
    readonly typeText?: string;
}
export declare function cleanRoomAssetTableColumnsToTerraform(struct?: CleanRoomAssetTableColumns): any;
export declare function cleanRoomAssetTableColumnsToHclTerraform(struct?: CleanRoomAssetTableColumns): any;
export declare class CleanRoomAssetTableColumnsOutputReference 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(): CleanRoomAssetTableColumns | undefined;
    set internalValue(value: CleanRoomAssetTableColumns | undefined);
    private _comment?;
    get comment(): string;
    set comment(value: string);
    resetComment(): void;
    get commentInput(): string | undefined;
    private _mask;
    get mask(): CleanRoomAssetTableColumnsMaskOutputReference;
    putMask(value: CleanRoomAssetTableColumnsMask): void;
    resetMask(): void;
    get maskInput(): cdktf.IResolvable | CleanRoomAssetTableColumnsMask | 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;
}
export declare class CleanRoomAssetTableColumnsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: CleanRoomAssetTableColumns[] | 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): CleanRoomAssetTableColumnsOutputReference;
}
export interface CleanRoomAssetTable {
}
export declare function cleanRoomAssetTableToTerraform(struct?: CleanRoomAssetTable | cdktf.IResolvable): any;
export declare function cleanRoomAssetTableToHclTerraform(struct?: CleanRoomAssetTable | cdktf.IResolvable): any;
export declare class CleanRoomAssetTableOutputReference 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(): CleanRoomAssetTable | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetTable | cdktf.IResolvable | undefined);
    private _columns;
    get columns(): CleanRoomAssetTableColumnsList;
}
export interface CleanRoomAssetTableLocalDetailsPartitionsValue {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#name CleanRoomAsset#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#op CleanRoomAsset#op}
    */
    readonly op?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#recipient_property_key CleanRoomAsset#recipient_property_key}
    */
    readonly recipientPropertyKey?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#value CleanRoomAsset#value}
    */
    readonly value?: string;
}
export declare function cleanRoomAssetTableLocalDetailsPartitionsValueToTerraform(struct?: CleanRoomAssetTableLocalDetailsPartitionsValue | cdktf.IResolvable): any;
export declare function cleanRoomAssetTableLocalDetailsPartitionsValueToHclTerraform(struct?: CleanRoomAssetTableLocalDetailsPartitionsValue | cdktf.IResolvable): any;
export declare class CleanRoomAssetTableLocalDetailsPartitionsValueOutputReference 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(): CleanRoomAssetTableLocalDetailsPartitionsValue | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetTableLocalDetailsPartitionsValue | cdktf.IResolvable | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _op?;
    get op(): string;
    set op(value: string);
    resetOp(): void;
    get opInput(): string | undefined;
    private _recipientPropertyKey?;
    get recipientPropertyKey(): string;
    set recipientPropertyKey(value: string);
    resetRecipientPropertyKey(): void;
    get recipientPropertyKeyInput(): string | undefined;
    private _value?;
    get value(): string;
    set value(value: string);
    resetValue(): void;
    get valueInput(): string | undefined;
}
export declare class CleanRoomAssetTableLocalDetailsPartitionsValueList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: CleanRoomAssetTableLocalDetailsPartitionsValue[] | 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): CleanRoomAssetTableLocalDetailsPartitionsValueOutputReference;
}
export interface CleanRoomAssetTableLocalDetailsPartitions {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#value CleanRoomAsset#value}
    */
    readonly value?: CleanRoomAssetTableLocalDetailsPartitionsValue[] | cdktf.IResolvable;
}
export declare function cleanRoomAssetTableLocalDetailsPartitionsToTerraform(struct?: CleanRoomAssetTableLocalDetailsPartitions | cdktf.IResolvable): any;
export declare function cleanRoomAssetTableLocalDetailsPartitionsToHclTerraform(struct?: CleanRoomAssetTableLocalDetailsPartitions | cdktf.IResolvable): any;
export declare class CleanRoomAssetTableLocalDetailsPartitionsOutputReference 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(): CleanRoomAssetTableLocalDetailsPartitions | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetTableLocalDetailsPartitions | cdktf.IResolvable | undefined);
    private _value;
    get value(): CleanRoomAssetTableLocalDetailsPartitionsValueList;
    putValue(value: CleanRoomAssetTableLocalDetailsPartitionsValue[] | cdktf.IResolvable): void;
    resetValue(): void;
    get valueInput(): cdktf.IResolvable | CleanRoomAssetTableLocalDetailsPartitionsValue[] | undefined;
}
export declare class CleanRoomAssetTableLocalDetailsPartitionsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: CleanRoomAssetTableLocalDetailsPartitions[] | 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): CleanRoomAssetTableLocalDetailsPartitionsOutputReference;
}
export interface CleanRoomAssetTableLocalDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#local_name CleanRoomAsset#local_name}
    */
    readonly localName: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#partitions CleanRoomAsset#partitions}
    */
    readonly partitions?: CleanRoomAssetTableLocalDetailsPartitions[] | cdktf.IResolvable;
}
export declare function cleanRoomAssetTableLocalDetailsToTerraform(struct?: CleanRoomAssetTableLocalDetails | cdktf.IResolvable): any;
export declare function cleanRoomAssetTableLocalDetailsToHclTerraform(struct?: CleanRoomAssetTableLocalDetails | cdktf.IResolvable): any;
export declare class CleanRoomAssetTableLocalDetailsOutputReference 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(): CleanRoomAssetTableLocalDetails | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetTableLocalDetails | cdktf.IResolvable | undefined);
    private _localName?;
    get localName(): string;
    set localName(value: string);
    get localNameInput(): string | undefined;
    private _partitions;
    get partitions(): CleanRoomAssetTableLocalDetailsPartitionsList;
    putPartitions(value: CleanRoomAssetTableLocalDetailsPartitions[] | cdktf.IResolvable): void;
    resetPartitions(): void;
    get partitionsInput(): cdktf.IResolvable | CleanRoomAssetTableLocalDetailsPartitions[] | undefined;
}
export interface CleanRoomAssetViewColumnsMask {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#function_name CleanRoomAsset#function_name}
    */
    readonly functionName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#using_column_names CleanRoomAsset#using_column_names}
    */
    readonly usingColumnNames?: string[];
}
export declare function cleanRoomAssetViewColumnsMaskToTerraform(struct?: CleanRoomAssetViewColumnsMask | cdktf.IResolvable): any;
export declare function cleanRoomAssetViewColumnsMaskToHclTerraform(struct?: CleanRoomAssetViewColumnsMask | cdktf.IResolvable): any;
export declare class CleanRoomAssetViewColumnsMaskOutputReference 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(): CleanRoomAssetViewColumnsMask | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetViewColumnsMask | cdktf.IResolvable | 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 CleanRoomAssetViewColumns {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#comment CleanRoomAsset#comment}
    */
    readonly comment?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#mask CleanRoomAsset#mask}
    */
    readonly mask?: CleanRoomAssetViewColumnsMask;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#name CleanRoomAsset#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#nullable CleanRoomAsset#nullable}
    */
    readonly nullable?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#partition_index CleanRoomAsset#partition_index}
    */
    readonly partitionIndex?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#position CleanRoomAsset#position}
    */
    readonly position?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_interval_type CleanRoomAsset#type_interval_type}
    */
    readonly typeIntervalType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_json CleanRoomAsset#type_json}
    */
    readonly typeJson?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_name CleanRoomAsset#type_name}
    */
    readonly typeName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_precision CleanRoomAsset#type_precision}
    */
    readonly typePrecision?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_scale CleanRoomAsset#type_scale}
    */
    readonly typeScale?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#type_text CleanRoomAsset#type_text}
    */
    readonly typeText?: string;
}
export declare function cleanRoomAssetViewColumnsToTerraform(struct?: CleanRoomAssetViewColumns): any;
export declare function cleanRoomAssetViewColumnsToHclTerraform(struct?: CleanRoomAssetViewColumns): any;
export declare class CleanRoomAssetViewColumnsOutputReference 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(): CleanRoomAssetViewColumns | undefined;
    set internalValue(value: CleanRoomAssetViewColumns | undefined);
    private _comment?;
    get comment(): string;
    set comment(value: string);
    resetComment(): void;
    get commentInput(): string | undefined;
    private _mask;
    get mask(): CleanRoomAssetViewColumnsMaskOutputReference;
    putMask(value: CleanRoomAssetViewColumnsMask): void;
    resetMask(): void;
    get maskInput(): cdktf.IResolvable | CleanRoomAssetViewColumnsMask | 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;
}
export declare class CleanRoomAssetViewColumnsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: CleanRoomAssetViewColumns[] | 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): CleanRoomAssetViewColumnsOutputReference;
}
export interface CleanRoomAssetView {
}
export declare function cleanRoomAssetViewToTerraform(struct?: CleanRoomAssetView | cdktf.IResolvable): any;
export declare function cleanRoomAssetViewToHclTerraform(struct?: CleanRoomAssetView | cdktf.IResolvable): any;
export declare class CleanRoomAssetViewOutputReference 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(): CleanRoomAssetView | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetView | cdktf.IResolvable | undefined);
    private _columns;
    get columns(): CleanRoomAssetViewColumnsList;
}
export interface CleanRoomAssetViewLocalDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#local_name CleanRoomAsset#local_name}
    */
    readonly localName: string;
}
export declare function cleanRoomAssetViewLocalDetailsToTerraform(struct?: CleanRoomAssetViewLocalDetails | cdktf.IResolvable): any;
export declare function cleanRoomAssetViewLocalDetailsToHclTerraform(struct?: CleanRoomAssetViewLocalDetails | cdktf.IResolvable): any;
export declare class CleanRoomAssetViewLocalDetailsOutputReference 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(): CleanRoomAssetViewLocalDetails | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetViewLocalDetails | cdktf.IResolvable | undefined);
    private _localName?;
    get localName(): string;
    set localName(value: string);
    get localNameInput(): string | undefined;
}
export interface CleanRoomAssetVolumeLocalDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#local_name CleanRoomAsset#local_name}
    */
    readonly localName: string;
}
export declare function cleanRoomAssetVolumeLocalDetailsToTerraform(struct?: CleanRoomAssetVolumeLocalDetails | cdktf.IResolvable): any;
export declare function cleanRoomAssetVolumeLocalDetailsToHclTerraform(struct?: CleanRoomAssetVolumeLocalDetails | cdktf.IResolvable): any;
export declare class CleanRoomAssetVolumeLocalDetailsOutputReference 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(): CleanRoomAssetVolumeLocalDetails | cdktf.IResolvable | undefined;
    set internalValue(value: CleanRoomAssetVolumeLocalDetails | cdktf.IResolvable | undefined);
    private _localName?;
    get localName(): string;
    set localName(value: string);
    get localNameInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset databricks_clean_room_asset}
*/
export declare class CleanRoomAsset extends cdktf.TerraformResource {
    static readonly tfResourceType = "databricks_clean_room_asset";
    /**
    * Generates CDKTF code for importing a CleanRoomAsset 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 CleanRoomAsset to import
    * @param importFromId The id of the existing CleanRoomAsset that should be imported. Refer to the {@link https://registry.terraform.io/providers/databricks/databricks/1.86.0/docs/resources/clean_room_asset#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the CleanRoomAsset 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.86.0/docs/resources/clean_room_asset databricks_clean_room_asset} 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 CleanRoomAssetConfig
    */
    constructor(scope: Construct, id: string, config: CleanRoomAssetConfig);
    get addedAt(): number;
    private _assetType?;
    get assetType(): string;
    set assetType(value: string);
    get assetTypeInput(): string | undefined;
    private _cleanRoomName?;
    get cleanRoomName(): string;
    set cleanRoomName(value: string);
    resetCleanRoomName(): void;
    get cleanRoomNameInput(): string | undefined;
    private _foreignTable;
    get foreignTable(): CleanRoomAssetForeignTableOutputReference;
    putForeignTable(value: CleanRoomAssetForeignTable): void;
    resetForeignTable(): void;
    get foreignTableInput(): cdktf.IResolvable | CleanRoomAssetForeignTable | undefined;
    private _foreignTableLocalDetails;
    get foreignTableLocalDetails(): CleanRoomAssetForeignTableLocalDetailsOutputReference;
    putForeignTableLocalDetails(value: CleanRoomAssetForeignTableLocalDetails): void;
    resetForeignTableLocalDetails(): void;
    get foreignTableLocalDetailsInput(): cdktf.IResolvable | CleanRoomAssetForeignTableLocalDetails | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
    private _notebook;
    get notebook(): CleanRoomAssetNotebookOutputReference;
    putNotebook(value: CleanRoomAssetNotebook): void;
    resetNotebook(): void;
    get notebookInput(): cdktf.IResolvable | CleanRoomAssetNotebook | undefined;
    get ownerCollaboratorAlias(): string;
    get status(): string;
    private _table;
    get table(): CleanRoomAssetTableOutputReference;
    putTable(value: CleanRoomAssetTable): void;
    resetTable(): void;
    get tableInput(): cdktf.IResolvable | CleanRoomAssetTable | undefined;
    private _tableLocalDetails;
    get tableLocalDetails(): CleanRoomAssetTableLocalDetailsOutputReference;
    putTableLocalDetails(value: CleanRoomAssetTableLocalDetails): void;
    resetTableLocalDetails(): void;
    get tableLocalDetailsInput(): cdktf.IResolvable | CleanRoomAssetTableLocalDetails | undefined;
    private _view;
    get view(): CleanRoomAssetViewOutputReference;
    putView(value: CleanRoomAssetView): void;
    resetView(): void;
    get viewInput(): cdktf.IResolvable | CleanRoomAssetView | undefined;
    private _viewLocalDetails;
    get viewLocalDetails(): CleanRoomAssetViewLocalDetailsOutputReference;
    putViewLocalDetails(value: CleanRoomAssetViewLocalDetails): void;
    resetViewLocalDetails(): void;
    get viewLocalDetailsInput(): cdktf.IResolvable | CleanRoomAssetViewLocalDetails | undefined;
    private _volumeLocalDetails;
    get volumeLocalDetails(): CleanRoomAssetVolumeLocalDetailsOutputReference;
    putVolumeLocalDetails(value: CleanRoomAssetVolumeLocalDetails): void;
    resetVolumeLocalDetails(): void;
    get volumeLocalDetailsInput(): cdktf.IResolvable | CleanRoomAssetVolumeLocalDetails | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
