import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DatabaseMigrationMigrationConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#bulk_include_exclude_data DatabaseMigrationMigration#bulk_include_exclude_data}
    */
    readonly bulkIncludeExcludeData?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#compartment_id DatabaseMigrationMigration#compartment_id}
    */
    readonly compartmentId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#database_combination DatabaseMigrationMigration#database_combination}
    */
    readonly databaseCombination: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#defined_tags DatabaseMigrationMigration#defined_tags}
    */
    readonly definedTags?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#description DatabaseMigrationMigration#description}
    */
    readonly description?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#display_name DatabaseMigrationMigration#display_name}
    */
    readonly displayName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#freeform_tags DatabaseMigrationMigration#freeform_tags}
    */
    readonly freeformTags?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#id DatabaseMigrationMigration#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/oracle/oci/6.18.0/docs/resources/database_migration_migration#source_container_database_connection_id DatabaseMigrationMigration#source_container_database_connection_id}
    */
    readonly sourceContainerDatabaseConnectionId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#source_database_connection_id DatabaseMigrationMigration#source_database_connection_id}
    */
    readonly sourceDatabaseConnectionId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#target_database_connection_id DatabaseMigrationMigration#target_database_connection_id}
    */
    readonly targetDatabaseConnectionId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#type DatabaseMigrationMigration#type}
    */
    readonly type: string;
    /**
    * advanced_parameters block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#advanced_parameters DatabaseMigrationMigration#advanced_parameters}
    */
    readonly advancedParameters?: DatabaseMigrationMigrationAdvancedParameters[] | cdktf.IResolvable;
    /**
    * advisor_settings block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#advisor_settings DatabaseMigrationMigration#advisor_settings}
    */
    readonly advisorSettings?: DatabaseMigrationMigrationAdvisorSettings;
    /**
    * data_transfer_medium_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#data_transfer_medium_details DatabaseMigrationMigration#data_transfer_medium_details}
    */
    readonly dataTransferMediumDetails?: DatabaseMigrationMigrationDataTransferMediumDetails;
    /**
    * exclude_objects block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#exclude_objects DatabaseMigrationMigration#exclude_objects}
    */
    readonly excludeObjects?: DatabaseMigrationMigrationExcludeObjects[] | cdktf.IResolvable;
    /**
    * ggs_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#ggs_details DatabaseMigrationMigration#ggs_details}
    */
    readonly ggsDetails?: DatabaseMigrationMigrationGgsDetails;
    /**
    * hub_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#hub_details DatabaseMigrationMigration#hub_details}
    */
    readonly hubDetails?: DatabaseMigrationMigrationHubDetails;
    /**
    * include_objects block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#include_objects DatabaseMigrationMigration#include_objects}
    */
    readonly includeObjects?: DatabaseMigrationMigrationIncludeObjects[] | cdktf.IResolvable;
    /**
    * initial_load_settings block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#initial_load_settings DatabaseMigrationMigration#initial_load_settings}
    */
    readonly initialLoadSettings?: DatabaseMigrationMigrationInitialLoadSettings;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#timeouts DatabaseMigrationMigration#timeouts}
    */
    readonly timeouts?: DatabaseMigrationMigrationTimeouts;
}
export interface DatabaseMigrationMigrationAdvancedParameters {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#data_type DatabaseMigrationMigration#data_type}
    */
    readonly dataType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#name DatabaseMigrationMigration#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#value DatabaseMigrationMigration#value}
    */
    readonly value?: string;
}
export declare function databaseMigrationMigrationAdvancedParametersToTerraform(struct?: DatabaseMigrationMigrationAdvancedParameters | cdktf.IResolvable): any;
export declare function databaseMigrationMigrationAdvancedParametersToHclTerraform(struct?: DatabaseMigrationMigrationAdvancedParameters | cdktf.IResolvable): any;
export declare class DatabaseMigrationMigrationAdvancedParametersOutputReference 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(): DatabaseMigrationMigrationAdvancedParameters | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationMigrationAdvancedParameters | cdktf.IResolvable | undefined);
    private _dataType?;
    get dataType(): string;
    set dataType(value: string);
    resetDataType(): void;
    get dataTypeInput(): string | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _value?;
    get value(): string;
    set value(value: string);
    resetValue(): void;
    get valueInput(): string | undefined;
}
export declare class DatabaseMigrationMigrationAdvancedParametersList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DatabaseMigrationMigrationAdvancedParameters[] | 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): DatabaseMigrationMigrationAdvancedParametersOutputReference;
}
export interface DatabaseMigrationMigrationAdvisorSettings {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_ignore_errors DatabaseMigrationMigration#is_ignore_errors}
    */
    readonly isIgnoreErrors?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_skip_advisor DatabaseMigrationMigration#is_skip_advisor}
    */
    readonly isSkipAdvisor?: boolean | cdktf.IResolvable;
}
export declare function databaseMigrationMigrationAdvisorSettingsToTerraform(struct?: DatabaseMigrationMigrationAdvisorSettingsOutputReference | DatabaseMigrationMigrationAdvisorSettings): any;
export declare function databaseMigrationMigrationAdvisorSettingsToHclTerraform(struct?: DatabaseMigrationMigrationAdvisorSettingsOutputReference | DatabaseMigrationMigrationAdvisorSettings): any;
export declare class DatabaseMigrationMigrationAdvisorSettingsOutputReference 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(): DatabaseMigrationMigrationAdvisorSettings | undefined;
    set internalValue(value: DatabaseMigrationMigrationAdvisorSettings | undefined);
    private _isIgnoreErrors?;
    get isIgnoreErrors(): boolean | cdktf.IResolvable;
    set isIgnoreErrors(value: boolean | cdktf.IResolvable);
    resetIsIgnoreErrors(): void;
    get isIgnoreErrorsInput(): boolean | cdktf.IResolvable | undefined;
    private _isSkipAdvisor?;
    get isSkipAdvisor(): boolean | cdktf.IResolvable;
    set isSkipAdvisor(value: boolean | cdktf.IResolvable);
    resetIsSkipAdvisor(): void;
    get isSkipAdvisorInput(): boolean | cdktf.IResolvable | undefined;
}
export interface DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#bucket DatabaseMigrationMigration#bucket}
    */
    readonly bucket?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#namespace DatabaseMigrationMigration#namespace}
    */
    readonly namespace?: string;
}
export declare function databaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucketToTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucketOutputReference | DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket): any;
export declare function databaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucketToHclTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucketOutputReference | DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket): any;
export declare class DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucketOutputReference 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(): DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket | undefined;
    set internalValue(value: DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket | undefined);
    private _bucket?;
    get bucket(): string;
    set bucket(value: string);
    resetBucket(): void;
    get bucketInput(): string | undefined;
    private _namespace?;
    get namespace(): string;
    set namespace(value: string);
    resetNamespace(): void;
    get namespaceInput(): string | undefined;
}
export interface DatabaseMigrationMigrationDataTransferMediumDetailsSource {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#kind DatabaseMigrationMigration#kind}
    */
    readonly kind: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#oci_home DatabaseMigrationMigration#oci_home}
    */
    readonly ociHome?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#wallet_location DatabaseMigrationMigration#wallet_location}
    */
    readonly walletLocation?: string;
}
export declare function databaseMigrationMigrationDataTransferMediumDetailsSourceToTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsSourceOutputReference | DatabaseMigrationMigrationDataTransferMediumDetailsSource): any;
export declare function databaseMigrationMigrationDataTransferMediumDetailsSourceToHclTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsSourceOutputReference | DatabaseMigrationMigrationDataTransferMediumDetailsSource): any;
export declare class DatabaseMigrationMigrationDataTransferMediumDetailsSourceOutputReference 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(): DatabaseMigrationMigrationDataTransferMediumDetailsSource | undefined;
    set internalValue(value: DatabaseMigrationMigrationDataTransferMediumDetailsSource | undefined);
    private _kind?;
    get kind(): string;
    set kind(value: string);
    get kindInput(): string | undefined;
    private _ociHome?;
    get ociHome(): string;
    set ociHome(value: string);
    resetOciHome(): void;
    get ociHomeInput(): string | undefined;
    private _walletLocation?;
    get walletLocation(): string;
    set walletLocation(value: string);
    resetWalletLocation(): void;
    get walletLocationInput(): string | undefined;
}
export interface DatabaseMigrationMigrationDataTransferMediumDetailsTarget {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#kind DatabaseMigrationMigration#kind}
    */
    readonly kind: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#oci_home DatabaseMigrationMigration#oci_home}
    */
    readonly ociHome?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#wallet_location DatabaseMigrationMigration#wallet_location}
    */
    readonly walletLocation?: string;
}
export declare function databaseMigrationMigrationDataTransferMediumDetailsTargetToTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsTargetOutputReference | DatabaseMigrationMigrationDataTransferMediumDetailsTarget): any;
export declare function databaseMigrationMigrationDataTransferMediumDetailsTargetToHclTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsTargetOutputReference | DatabaseMigrationMigrationDataTransferMediumDetailsTarget): any;
export declare class DatabaseMigrationMigrationDataTransferMediumDetailsTargetOutputReference 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(): DatabaseMigrationMigrationDataTransferMediumDetailsTarget | undefined;
    set internalValue(value: DatabaseMigrationMigrationDataTransferMediumDetailsTarget | undefined);
    private _kind?;
    get kind(): string;
    set kind(value: string);
    get kindInput(): string | undefined;
    private _ociHome?;
    get ociHome(): string;
    set ociHome(value: string);
    resetOciHome(): void;
    get ociHomeInput(): string | undefined;
    private _walletLocation?;
    get walletLocation(): string;
    set walletLocation(value: string);
    resetWalletLocation(): void;
    get walletLocationInput(): string | undefined;
}
export interface DatabaseMigrationMigrationDataTransferMediumDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#access_key_id DatabaseMigrationMigration#access_key_id}
    */
    readonly accessKeyId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#name DatabaseMigrationMigration#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#region DatabaseMigrationMigration#region}
    */
    readonly region?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#secret_access_key DatabaseMigrationMigration#secret_access_key}
    */
    readonly secretAccessKey?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#shared_storage_mount_target_id DatabaseMigrationMigration#shared_storage_mount_target_id}
    */
    readonly sharedStorageMountTargetId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#type DatabaseMigrationMigration#type}
    */
    readonly type: string;
    /**
    * object_storage_bucket block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#object_storage_bucket DatabaseMigrationMigration#object_storage_bucket}
    */
    readonly objectStorageBucket?: DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket;
    /**
    * source block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#source DatabaseMigrationMigration#source}
    */
    readonly source?: DatabaseMigrationMigrationDataTransferMediumDetailsSource;
    /**
    * target block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#target DatabaseMigrationMigration#target}
    */
    readonly target?: DatabaseMigrationMigrationDataTransferMediumDetailsTarget;
}
export declare function databaseMigrationMigrationDataTransferMediumDetailsToTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsOutputReference | DatabaseMigrationMigrationDataTransferMediumDetails): any;
export declare function databaseMigrationMigrationDataTransferMediumDetailsToHclTerraform(struct?: DatabaseMigrationMigrationDataTransferMediumDetailsOutputReference | DatabaseMigrationMigrationDataTransferMediumDetails): any;
export declare class DatabaseMigrationMigrationDataTransferMediumDetailsOutputReference 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(): DatabaseMigrationMigrationDataTransferMediumDetails | undefined;
    set internalValue(value: DatabaseMigrationMigrationDataTransferMediumDetails | undefined);
    private _accessKeyId?;
    get accessKeyId(): string;
    set accessKeyId(value: string);
    resetAccessKeyId(): void;
    get accessKeyIdInput(): string | undefined;
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _region?;
    get region(): string;
    set region(value: string);
    resetRegion(): void;
    get regionInput(): string | undefined;
    private _secretAccessKey?;
    get secretAccessKey(): string;
    set secretAccessKey(value: string);
    resetSecretAccessKey(): void;
    get secretAccessKeyInput(): string | undefined;
    private _sharedStorageMountTargetId?;
    get sharedStorageMountTargetId(): string;
    set sharedStorageMountTargetId(value: string);
    resetSharedStorageMountTargetId(): void;
    get sharedStorageMountTargetIdInput(): string | undefined;
    private _type?;
    get type(): string;
    set type(value: string);
    get typeInput(): string | undefined;
    private _objectStorageBucket;
    get objectStorageBucket(): DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucketOutputReference;
    putObjectStorageBucket(value: DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket): void;
    resetObjectStorageBucket(): void;
    get objectStorageBucketInput(): DatabaseMigrationMigrationDataTransferMediumDetailsObjectStorageBucket | undefined;
    private _source;
    get source(): DatabaseMigrationMigrationDataTransferMediumDetailsSourceOutputReference;
    putSource(value: DatabaseMigrationMigrationDataTransferMediumDetailsSource): void;
    resetSource(): void;
    get sourceInput(): DatabaseMigrationMigrationDataTransferMediumDetailsSource | undefined;
    private _target;
    get target(): DatabaseMigrationMigrationDataTransferMediumDetailsTargetOutputReference;
    putTarget(value: DatabaseMigrationMigrationDataTransferMediumDetailsTarget): void;
    resetTarget(): void;
    get targetInput(): DatabaseMigrationMigrationDataTransferMediumDetailsTarget | undefined;
}
export interface DatabaseMigrationMigrationExcludeObjects {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_omit_excluded_table_from_replication DatabaseMigrationMigration#is_omit_excluded_table_from_replication}
    */
    readonly isOmitExcludedTableFromReplication?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#object DatabaseMigrationMigration#object}
    */
    readonly object: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#owner DatabaseMigrationMigration#owner}
    */
    readonly owner?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#schema DatabaseMigrationMigration#schema}
    */
    readonly schema?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#type DatabaseMigrationMigration#type}
    */
    readonly type?: string;
}
export declare function databaseMigrationMigrationExcludeObjectsToTerraform(struct?: DatabaseMigrationMigrationExcludeObjects | cdktf.IResolvable): any;
export declare function databaseMigrationMigrationExcludeObjectsToHclTerraform(struct?: DatabaseMigrationMigrationExcludeObjects | cdktf.IResolvable): any;
export declare class DatabaseMigrationMigrationExcludeObjectsOutputReference 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(): DatabaseMigrationMigrationExcludeObjects | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationMigrationExcludeObjects | cdktf.IResolvable | undefined);
    private _isOmitExcludedTableFromReplication?;
    get isOmitExcludedTableFromReplication(): boolean | cdktf.IResolvable;
    set isOmitExcludedTableFromReplication(value: boolean | cdktf.IResolvable);
    resetIsOmitExcludedTableFromReplication(): void;
    get isOmitExcludedTableFromReplicationInput(): boolean | cdktf.IResolvable | undefined;
    private _object?;
    get object(): string;
    set object(value: string);
    get objectInput(): string | undefined;
    private _owner?;
    get owner(): string;
    set owner(value: string);
    resetOwner(): void;
    get ownerInput(): string | undefined;
    private _schema?;
    get schema(): string;
    set schema(value: string);
    resetSchema(): void;
    get schemaInput(): string | undefined;
    private _type?;
    get type(): string;
    set type(value: string);
    resetType(): void;
    get typeInput(): string | undefined;
}
export declare class DatabaseMigrationMigrationExcludeObjectsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DatabaseMigrationMigrationExcludeObjects[] | 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): DatabaseMigrationMigrationExcludeObjectsOutputReference;
}
export interface DatabaseMigrationMigrationGgsDetailsGgsDeployment {
}
export declare function databaseMigrationMigrationGgsDetailsGgsDeploymentToTerraform(struct?: DatabaseMigrationMigrationGgsDetailsGgsDeployment): any;
export declare function databaseMigrationMigrationGgsDetailsGgsDeploymentToHclTerraform(struct?: DatabaseMigrationMigrationGgsDetailsGgsDeployment): any;
export declare class DatabaseMigrationMigrationGgsDetailsGgsDeploymentOutputReference 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(): DatabaseMigrationMigrationGgsDetailsGgsDeployment | undefined;
    set internalValue(value: DatabaseMigrationMigrationGgsDetailsGgsDeployment | undefined);
    get deploymentId(): string;
    get ggsAdminCredentialsSecretId(): string;
}
export declare class DatabaseMigrationMigrationGgsDetailsGgsDeploymentList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): DatabaseMigrationMigrationGgsDetailsGgsDeploymentOutputReference;
}
export interface DatabaseMigrationMigrationGgsDetailsExtract {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#long_trans_duration DatabaseMigrationMigration#long_trans_duration}
    */
    readonly longTransDuration?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#performance_profile DatabaseMigrationMigration#performance_profile}
    */
    readonly performanceProfile?: string;
}
export declare function databaseMigrationMigrationGgsDetailsExtractToTerraform(struct?: DatabaseMigrationMigrationGgsDetailsExtractOutputReference | DatabaseMigrationMigrationGgsDetailsExtract): any;
export declare function databaseMigrationMigrationGgsDetailsExtractToHclTerraform(struct?: DatabaseMigrationMigrationGgsDetailsExtractOutputReference | DatabaseMigrationMigrationGgsDetailsExtract): any;
export declare class DatabaseMigrationMigrationGgsDetailsExtractOutputReference 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(): DatabaseMigrationMigrationGgsDetailsExtract | undefined;
    set internalValue(value: DatabaseMigrationMigrationGgsDetailsExtract | undefined);
    private _longTransDuration?;
    get longTransDuration(): number;
    set longTransDuration(value: number);
    resetLongTransDuration(): void;
    get longTransDurationInput(): number | undefined;
    private _performanceProfile?;
    get performanceProfile(): string;
    set performanceProfile(value: string);
    resetPerformanceProfile(): void;
    get performanceProfileInput(): string | undefined;
}
export interface DatabaseMigrationMigrationGgsDetailsReplicat {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#performance_profile DatabaseMigrationMigration#performance_profile}
    */
    readonly performanceProfile?: string;
}
export declare function databaseMigrationMigrationGgsDetailsReplicatToTerraform(struct?: DatabaseMigrationMigrationGgsDetailsReplicatOutputReference | DatabaseMigrationMigrationGgsDetailsReplicat): any;
export declare function databaseMigrationMigrationGgsDetailsReplicatToHclTerraform(struct?: DatabaseMigrationMigrationGgsDetailsReplicatOutputReference | DatabaseMigrationMigrationGgsDetailsReplicat): any;
export declare class DatabaseMigrationMigrationGgsDetailsReplicatOutputReference 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(): DatabaseMigrationMigrationGgsDetailsReplicat | undefined;
    set internalValue(value: DatabaseMigrationMigrationGgsDetailsReplicat | undefined);
    private _performanceProfile?;
    get performanceProfile(): string;
    set performanceProfile(value: string);
    resetPerformanceProfile(): void;
    get performanceProfileInput(): string | undefined;
}
export interface DatabaseMigrationMigrationGgsDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#acceptable_lag DatabaseMigrationMigration#acceptable_lag}
    */
    readonly acceptableLag?: number;
    /**
    * extract block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#extract DatabaseMigrationMigration#extract}
    */
    readonly extract?: DatabaseMigrationMigrationGgsDetailsExtract;
    /**
    * replicat block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#replicat DatabaseMigrationMigration#replicat}
    */
    readonly replicat?: DatabaseMigrationMigrationGgsDetailsReplicat;
}
export declare function databaseMigrationMigrationGgsDetailsToTerraform(struct?: DatabaseMigrationMigrationGgsDetailsOutputReference | DatabaseMigrationMigrationGgsDetails): any;
export declare function databaseMigrationMigrationGgsDetailsToHclTerraform(struct?: DatabaseMigrationMigrationGgsDetailsOutputReference | DatabaseMigrationMigrationGgsDetails): any;
export declare class DatabaseMigrationMigrationGgsDetailsOutputReference 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(): DatabaseMigrationMigrationGgsDetails | undefined;
    set internalValue(value: DatabaseMigrationMigrationGgsDetails | undefined);
    private _acceptableLag?;
    get acceptableLag(): number;
    set acceptableLag(value: number);
    resetAcceptableLag(): void;
    get acceptableLagInput(): number | undefined;
    private _ggsDeployment;
    get ggsDeployment(): DatabaseMigrationMigrationGgsDetailsGgsDeploymentList;
    private _extract;
    get extract(): DatabaseMigrationMigrationGgsDetailsExtractOutputReference;
    putExtract(value: DatabaseMigrationMigrationGgsDetailsExtract): void;
    resetExtract(): void;
    get extractInput(): DatabaseMigrationMigrationGgsDetailsExtract | undefined;
    private _replicat;
    get replicat(): DatabaseMigrationMigrationGgsDetailsReplicatOutputReference;
    putReplicat(value: DatabaseMigrationMigrationGgsDetailsReplicat): void;
    resetReplicat(): void;
    get replicatInput(): DatabaseMigrationMigrationGgsDetailsReplicat | undefined;
}
export interface DatabaseMigrationMigrationHubDetailsExtract {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#long_trans_duration DatabaseMigrationMigration#long_trans_duration}
    */
    readonly longTransDuration?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#performance_profile DatabaseMigrationMigration#performance_profile}
    */
    readonly performanceProfile?: string;
}
export declare function databaseMigrationMigrationHubDetailsExtractToTerraform(struct?: DatabaseMigrationMigrationHubDetailsExtractOutputReference | DatabaseMigrationMigrationHubDetailsExtract): any;
export declare function databaseMigrationMigrationHubDetailsExtractToHclTerraform(struct?: DatabaseMigrationMigrationHubDetailsExtractOutputReference | DatabaseMigrationMigrationHubDetailsExtract): any;
export declare class DatabaseMigrationMigrationHubDetailsExtractOutputReference 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(): DatabaseMigrationMigrationHubDetailsExtract | undefined;
    set internalValue(value: DatabaseMigrationMigrationHubDetailsExtract | undefined);
    private _longTransDuration?;
    get longTransDuration(): number;
    set longTransDuration(value: number);
    resetLongTransDuration(): void;
    get longTransDurationInput(): number | undefined;
    private _performanceProfile?;
    get performanceProfile(): string;
    set performanceProfile(value: string);
    resetPerformanceProfile(): void;
    get performanceProfileInput(): string | undefined;
}
export interface DatabaseMigrationMigrationHubDetailsReplicat {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#performance_profile DatabaseMigrationMigration#performance_profile}
    */
    readonly performanceProfile?: string;
}
export declare function databaseMigrationMigrationHubDetailsReplicatToTerraform(struct?: DatabaseMigrationMigrationHubDetailsReplicatOutputReference | DatabaseMigrationMigrationHubDetailsReplicat): any;
export declare function databaseMigrationMigrationHubDetailsReplicatToHclTerraform(struct?: DatabaseMigrationMigrationHubDetailsReplicatOutputReference | DatabaseMigrationMigrationHubDetailsReplicat): any;
export declare class DatabaseMigrationMigrationHubDetailsReplicatOutputReference 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(): DatabaseMigrationMigrationHubDetailsReplicat | undefined;
    set internalValue(value: DatabaseMigrationMigrationHubDetailsReplicat | undefined);
    private _performanceProfile?;
    get performanceProfile(): string;
    set performanceProfile(value: string);
    resetPerformanceProfile(): void;
    get performanceProfileInput(): string | undefined;
}
export interface DatabaseMigrationMigrationHubDetailsRestAdminCredentials {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#password DatabaseMigrationMigration#password}
    */
    readonly password: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#username DatabaseMigrationMigration#username}
    */
    readonly username: string;
}
export declare function databaseMigrationMigrationHubDetailsRestAdminCredentialsToTerraform(struct?: DatabaseMigrationMigrationHubDetailsRestAdminCredentialsOutputReference | DatabaseMigrationMigrationHubDetailsRestAdminCredentials): any;
export declare function databaseMigrationMigrationHubDetailsRestAdminCredentialsToHclTerraform(struct?: DatabaseMigrationMigrationHubDetailsRestAdminCredentialsOutputReference | DatabaseMigrationMigrationHubDetailsRestAdminCredentials): any;
export declare class DatabaseMigrationMigrationHubDetailsRestAdminCredentialsOutputReference 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(): DatabaseMigrationMigrationHubDetailsRestAdminCredentials | undefined;
    set internalValue(value: DatabaseMigrationMigrationHubDetailsRestAdminCredentials | undefined);
    private _password?;
    get password(): string;
    set password(value: string);
    get passwordInput(): string | undefined;
    private _username?;
    get username(): string;
    set username(value: string);
    get usernameInput(): string | undefined;
}
export interface DatabaseMigrationMigrationHubDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#acceptable_lag DatabaseMigrationMigration#acceptable_lag}
    */
    readonly acceptableLag?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#compute_id DatabaseMigrationMigration#compute_id}
    */
    readonly computeId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#key_id DatabaseMigrationMigration#key_id}
    */
    readonly keyId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#url DatabaseMigrationMigration#url}
    */
    readonly url: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#vault_id DatabaseMigrationMigration#vault_id}
    */
    readonly vaultId: string;
    /**
    * extract block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#extract DatabaseMigrationMigration#extract}
    */
    readonly extract?: DatabaseMigrationMigrationHubDetailsExtract;
    /**
    * replicat block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#replicat DatabaseMigrationMigration#replicat}
    */
    readonly replicat?: DatabaseMigrationMigrationHubDetailsReplicat;
    /**
    * rest_admin_credentials block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#rest_admin_credentials DatabaseMigrationMigration#rest_admin_credentials}
    */
    readonly restAdminCredentials: DatabaseMigrationMigrationHubDetailsRestAdminCredentials;
}
export declare function databaseMigrationMigrationHubDetailsToTerraform(struct?: DatabaseMigrationMigrationHubDetailsOutputReference | DatabaseMigrationMigrationHubDetails): any;
export declare function databaseMigrationMigrationHubDetailsToHclTerraform(struct?: DatabaseMigrationMigrationHubDetailsOutputReference | DatabaseMigrationMigrationHubDetails): any;
export declare class DatabaseMigrationMigrationHubDetailsOutputReference 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(): DatabaseMigrationMigrationHubDetails | undefined;
    set internalValue(value: DatabaseMigrationMigrationHubDetails | undefined);
    private _acceptableLag?;
    get acceptableLag(): number;
    set acceptableLag(value: number);
    resetAcceptableLag(): void;
    get acceptableLagInput(): number | undefined;
    private _computeId?;
    get computeId(): string;
    set computeId(value: string);
    resetComputeId(): void;
    get computeIdInput(): string | undefined;
    private _keyId?;
    get keyId(): string;
    set keyId(value: string);
    get keyIdInput(): string | undefined;
    private _url?;
    get url(): string;
    set url(value: string);
    get urlInput(): string | undefined;
    private _vaultId?;
    get vaultId(): string;
    set vaultId(value: string);
    get vaultIdInput(): string | undefined;
    private _extract;
    get extract(): DatabaseMigrationMigrationHubDetailsExtractOutputReference;
    putExtract(value: DatabaseMigrationMigrationHubDetailsExtract): void;
    resetExtract(): void;
    get extractInput(): DatabaseMigrationMigrationHubDetailsExtract | undefined;
    private _replicat;
    get replicat(): DatabaseMigrationMigrationHubDetailsReplicatOutputReference;
    putReplicat(value: DatabaseMigrationMigrationHubDetailsReplicat): void;
    resetReplicat(): void;
    get replicatInput(): DatabaseMigrationMigrationHubDetailsReplicat | undefined;
    private _restAdminCredentials;
    get restAdminCredentials(): DatabaseMigrationMigrationHubDetailsRestAdminCredentialsOutputReference;
    putRestAdminCredentials(value: DatabaseMigrationMigrationHubDetailsRestAdminCredentials): void;
    get restAdminCredentialsInput(): DatabaseMigrationMigrationHubDetailsRestAdminCredentials | undefined;
}
export interface DatabaseMigrationMigrationIncludeObjects {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_omit_excluded_table_from_replication DatabaseMigrationMigration#is_omit_excluded_table_from_replication}
    */
    readonly isOmitExcludedTableFromReplication?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#object DatabaseMigrationMigration#object}
    */
    readonly object: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#owner DatabaseMigrationMigration#owner}
    */
    readonly owner?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#schema DatabaseMigrationMigration#schema}
    */
    readonly schema?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#type DatabaseMigrationMigration#type}
    */
    readonly type?: string;
}
export declare function databaseMigrationMigrationIncludeObjectsToTerraform(struct?: DatabaseMigrationMigrationIncludeObjects | cdktf.IResolvable): any;
export declare function databaseMigrationMigrationIncludeObjectsToHclTerraform(struct?: DatabaseMigrationMigrationIncludeObjects | cdktf.IResolvable): any;
export declare class DatabaseMigrationMigrationIncludeObjectsOutputReference 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(): DatabaseMigrationMigrationIncludeObjects | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationMigrationIncludeObjects | cdktf.IResolvable | undefined);
    private _isOmitExcludedTableFromReplication?;
    get isOmitExcludedTableFromReplication(): boolean | cdktf.IResolvable;
    set isOmitExcludedTableFromReplication(value: boolean | cdktf.IResolvable);
    resetIsOmitExcludedTableFromReplication(): void;
    get isOmitExcludedTableFromReplicationInput(): boolean | cdktf.IResolvable | undefined;
    private _object?;
    get object(): string;
    set object(value: string);
    get objectInput(): string | undefined;
    private _owner?;
    get owner(): string;
    set owner(value: string);
    resetOwner(): void;
    get ownerInput(): string | undefined;
    private _schema?;
    get schema(): string;
    set schema(value: string);
    resetSchema(): void;
    get schemaInput(): string | undefined;
    private _type?;
    get type(): string;
    set type(value: string);
    resetType(): void;
    get typeInput(): string | undefined;
}
export declare class DatabaseMigrationMigrationIncludeObjectsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DatabaseMigrationMigrationIncludeObjects[] | 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): DatabaseMigrationMigrationIncludeObjectsOutputReference;
}
export interface DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#estimate DatabaseMigrationMigration#estimate}
    */
    readonly estimate?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#exclude_parameters DatabaseMigrationMigration#exclude_parameters}
    */
    readonly excludeParameters?: string[];
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#export_parallelism_degree DatabaseMigrationMigration#export_parallelism_degree}
    */
    readonly exportParallelismDegree?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#import_parallelism_degree DatabaseMigrationMigration#import_parallelism_degree}
    */
    readonly importParallelismDegree?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_cluster DatabaseMigrationMigration#is_cluster}
    */
    readonly isCluster?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#table_exists_action DatabaseMigrationMigration#table_exists_action}
    */
    readonly tableExistsAction?: string;
}
export declare function databaseMigrationMigrationInitialLoadSettingsDataPumpParametersToTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsDataPumpParametersOutputReference | DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters): any;
export declare function databaseMigrationMigrationInitialLoadSettingsDataPumpParametersToHclTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsDataPumpParametersOutputReference | DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters): any;
export declare class DatabaseMigrationMigrationInitialLoadSettingsDataPumpParametersOutputReference 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(): DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters | undefined;
    set internalValue(value: DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters | undefined);
    private _estimate?;
    get estimate(): string;
    set estimate(value: string);
    resetEstimate(): void;
    get estimateInput(): string | undefined;
    private _excludeParameters?;
    get excludeParameters(): string[];
    set excludeParameters(value: string[]);
    resetExcludeParameters(): void;
    get excludeParametersInput(): string[] | undefined;
    private _exportParallelismDegree?;
    get exportParallelismDegree(): number;
    set exportParallelismDegree(value: number);
    resetExportParallelismDegree(): void;
    get exportParallelismDegreeInput(): number | undefined;
    private _importParallelismDegree?;
    get importParallelismDegree(): number;
    set importParallelismDegree(value: number);
    resetImportParallelismDegree(): void;
    get importParallelismDegreeInput(): number | undefined;
    private _isCluster?;
    get isCluster(): boolean | cdktf.IResolvable;
    set isCluster(value: boolean | cdktf.IResolvable);
    resetIsCluster(): void;
    get isClusterInput(): boolean | cdktf.IResolvable | undefined;
    private _tableExistsAction?;
    get tableExistsAction(): string;
    set tableExistsAction(value: string);
    resetTableExistsAction(): void;
    get tableExistsActionInput(): string | undefined;
}
export interface DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#name DatabaseMigrationMigration#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#path DatabaseMigrationMigration#path}
    */
    readonly path?: string;
}
export declare function databaseMigrationMigrationInitialLoadSettingsExportDirectoryObjectToTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObjectOutputReference | DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject): any;
export declare function databaseMigrationMigrationInitialLoadSettingsExportDirectoryObjectToHclTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObjectOutputReference | DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject): any;
export declare class DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObjectOutputReference 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(): DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject | undefined;
    set internalValue(value: DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _path?;
    get path(): string;
    set path(value: string);
    resetPath(): void;
    get pathInput(): string | undefined;
}
export interface DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#name DatabaseMigrationMigration#name}
    */
    readonly name?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#path DatabaseMigrationMigration#path}
    */
    readonly path?: string;
}
export declare function databaseMigrationMigrationInitialLoadSettingsImportDirectoryObjectToTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObjectOutputReference | DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject): any;
export declare function databaseMigrationMigrationInitialLoadSettingsImportDirectoryObjectToHclTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObjectOutputReference | DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject): any;
export declare class DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObjectOutputReference 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(): DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject | undefined;
    set internalValue(value: DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    resetName(): void;
    get nameInput(): string | undefined;
    private _path?;
    get path(): string;
    set path(value: string);
    resetPath(): void;
    get pathInput(): string | undefined;
}
export interface DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#new_value DatabaseMigrationMigration#new_value}
    */
    readonly newValue?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#old_value DatabaseMigrationMigration#old_value}
    */
    readonly oldValue?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#type DatabaseMigrationMigration#type}
    */
    readonly type?: string;
}
export declare function databaseMigrationMigrationInitialLoadSettingsMetadataRemapsToTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps | cdktf.IResolvable): any;
export declare function databaseMigrationMigrationInitialLoadSettingsMetadataRemapsToHclTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps | cdktf.IResolvable): any;
export declare class DatabaseMigrationMigrationInitialLoadSettingsMetadataRemapsOutputReference 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(): DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps | cdktf.IResolvable | undefined);
    private _newValue?;
    get newValue(): string;
    set newValue(value: string);
    resetNewValue(): void;
    get newValueInput(): string | undefined;
    private _oldValue?;
    get oldValue(): string;
    set oldValue(value: string);
    resetOldValue(): void;
    get oldValueInput(): string | undefined;
    private _type?;
    get type(): string;
    set type(value: string);
    resetType(): void;
    get typeInput(): string | undefined;
}
export declare class DatabaseMigrationMigrationInitialLoadSettingsMetadataRemapsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps[] | 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): DatabaseMigrationMigrationInitialLoadSettingsMetadataRemapsOutputReference;
}
export interface DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#block_size_in_kbs DatabaseMigrationMigration#block_size_in_kbs}
    */
    readonly blockSizeInKbs?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#extend_size_in_mbs DatabaseMigrationMigration#extend_size_in_mbs}
    */
    readonly extendSizeInMbs?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_auto_create DatabaseMigrationMigration#is_auto_create}
    */
    readonly isAutoCreate?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_big_file DatabaseMigrationMigration#is_big_file}
    */
    readonly isBigFile?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#remap_target DatabaseMigrationMigration#remap_target}
    */
    readonly remapTarget?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#target_type DatabaseMigrationMigration#target_type}
    */
    readonly targetType: string;
}
export declare function databaseMigrationMigrationInitialLoadSettingsTablespaceDetailsToTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetailsOutputReference | DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails): any;
export declare function databaseMigrationMigrationInitialLoadSettingsTablespaceDetailsToHclTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetailsOutputReference | DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails): any;
export declare class DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetailsOutputReference 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(): DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails | undefined;
    set internalValue(value: DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails | undefined);
    private _blockSizeInKbs?;
    get blockSizeInKbs(): string;
    set blockSizeInKbs(value: string);
    resetBlockSizeInKbs(): void;
    get blockSizeInKbsInput(): string | undefined;
    private _extendSizeInMbs?;
    get extendSizeInMbs(): number;
    set extendSizeInMbs(value: number);
    resetExtendSizeInMbs(): void;
    get extendSizeInMbsInput(): number | undefined;
    private _isAutoCreate?;
    get isAutoCreate(): boolean | cdktf.IResolvable;
    set isAutoCreate(value: boolean | cdktf.IResolvable);
    resetIsAutoCreate(): void;
    get isAutoCreateInput(): boolean | cdktf.IResolvable | undefined;
    private _isBigFile?;
    get isBigFile(): boolean | cdktf.IResolvable;
    set isBigFile(value: boolean | cdktf.IResolvable);
    resetIsBigFile(): void;
    get isBigFileInput(): boolean | cdktf.IResolvable | undefined;
    private _remapTarget?;
    get remapTarget(): string;
    set remapTarget(value: string);
    resetRemapTarget(): void;
    get remapTargetInput(): string | undefined;
    private _targetType?;
    get targetType(): string;
    set targetType(value: string);
    get targetTypeInput(): string | undefined;
}
export interface DatabaseMigrationMigrationInitialLoadSettings {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#compatibility DatabaseMigrationMigration#compatibility}
    */
    readonly compatibility?: string[];
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#handle_grant_errors DatabaseMigrationMigration#handle_grant_errors}
    */
    readonly handleGrantErrors?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_consistent DatabaseMigrationMigration#is_consistent}
    */
    readonly isConsistent?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_ignore_existing_objects DatabaseMigrationMigration#is_ignore_existing_objects}
    */
    readonly isIgnoreExistingObjects?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#is_tz_utc DatabaseMigrationMigration#is_tz_utc}
    */
    readonly isTzUtc?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#job_mode DatabaseMigrationMigration#job_mode}
    */
    readonly jobMode: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#primary_key_compatibility DatabaseMigrationMigration#primary_key_compatibility}
    */
    readonly primaryKeyCompatibility?: string;
    /**
    * data_pump_parameters block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#data_pump_parameters DatabaseMigrationMigration#data_pump_parameters}
    */
    readonly dataPumpParameters?: DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters;
    /**
    * export_directory_object block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#export_directory_object DatabaseMigrationMigration#export_directory_object}
    */
    readonly exportDirectoryObject?: DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject;
    /**
    * import_directory_object block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#import_directory_object DatabaseMigrationMigration#import_directory_object}
    */
    readonly importDirectoryObject?: DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject;
    /**
    * metadata_remaps block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#metadata_remaps DatabaseMigrationMigration#metadata_remaps}
    */
    readonly metadataRemaps?: DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps[] | cdktf.IResolvable;
    /**
    * tablespace_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#tablespace_details DatabaseMigrationMigration#tablespace_details}
    */
    readonly tablespaceDetails?: DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails;
}
export declare function databaseMigrationMigrationInitialLoadSettingsToTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsOutputReference | DatabaseMigrationMigrationInitialLoadSettings): any;
export declare function databaseMigrationMigrationInitialLoadSettingsToHclTerraform(struct?: DatabaseMigrationMigrationInitialLoadSettingsOutputReference | DatabaseMigrationMigrationInitialLoadSettings): any;
export declare class DatabaseMigrationMigrationInitialLoadSettingsOutputReference 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(): DatabaseMigrationMigrationInitialLoadSettings | undefined;
    set internalValue(value: DatabaseMigrationMigrationInitialLoadSettings | undefined);
    private _compatibility?;
    get compatibility(): string[];
    set compatibility(value: string[]);
    resetCompatibility(): void;
    get compatibilityInput(): string[] | undefined;
    private _handleGrantErrors?;
    get handleGrantErrors(): string;
    set handleGrantErrors(value: string);
    resetHandleGrantErrors(): void;
    get handleGrantErrorsInput(): string | undefined;
    private _isConsistent?;
    get isConsistent(): boolean | cdktf.IResolvable;
    set isConsistent(value: boolean | cdktf.IResolvable);
    resetIsConsistent(): void;
    get isConsistentInput(): boolean | cdktf.IResolvable | undefined;
    private _isIgnoreExistingObjects?;
    get isIgnoreExistingObjects(): boolean | cdktf.IResolvable;
    set isIgnoreExistingObjects(value: boolean | cdktf.IResolvable);
    resetIsIgnoreExistingObjects(): void;
    get isIgnoreExistingObjectsInput(): boolean | cdktf.IResolvable | undefined;
    private _isTzUtc?;
    get isTzUtc(): boolean | cdktf.IResolvable;
    set isTzUtc(value: boolean | cdktf.IResolvable);
    resetIsTzUtc(): void;
    get isTzUtcInput(): boolean | cdktf.IResolvable | undefined;
    private _jobMode?;
    get jobMode(): string;
    set jobMode(value: string);
    get jobModeInput(): string | undefined;
    private _primaryKeyCompatibility?;
    get primaryKeyCompatibility(): string;
    set primaryKeyCompatibility(value: string);
    resetPrimaryKeyCompatibility(): void;
    get primaryKeyCompatibilityInput(): string | undefined;
    private _dataPumpParameters;
    get dataPumpParameters(): DatabaseMigrationMigrationInitialLoadSettingsDataPumpParametersOutputReference;
    putDataPumpParameters(value: DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters): void;
    resetDataPumpParameters(): void;
    get dataPumpParametersInput(): DatabaseMigrationMigrationInitialLoadSettingsDataPumpParameters | undefined;
    private _exportDirectoryObject;
    get exportDirectoryObject(): DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObjectOutputReference;
    putExportDirectoryObject(value: DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject): void;
    resetExportDirectoryObject(): void;
    get exportDirectoryObjectInput(): DatabaseMigrationMigrationInitialLoadSettingsExportDirectoryObject | undefined;
    private _importDirectoryObject;
    get importDirectoryObject(): DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObjectOutputReference;
    putImportDirectoryObject(value: DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject): void;
    resetImportDirectoryObject(): void;
    get importDirectoryObjectInput(): DatabaseMigrationMigrationInitialLoadSettingsImportDirectoryObject | undefined;
    private _metadataRemaps;
    get metadataRemaps(): DatabaseMigrationMigrationInitialLoadSettingsMetadataRemapsList;
    putMetadataRemaps(value: DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps[] | cdktf.IResolvable): void;
    resetMetadataRemaps(): void;
    get metadataRemapsInput(): cdktf.IResolvable | DatabaseMigrationMigrationInitialLoadSettingsMetadataRemaps[] | undefined;
    private _tablespaceDetails;
    get tablespaceDetails(): DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetailsOutputReference;
    putTablespaceDetails(value: DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails): void;
    resetTablespaceDetails(): void;
    get tablespaceDetailsInput(): DatabaseMigrationMigrationInitialLoadSettingsTablespaceDetails | undefined;
}
export interface DatabaseMigrationMigrationTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#create DatabaseMigrationMigration#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#delete DatabaseMigrationMigration#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#update DatabaseMigrationMigration#update}
    */
    readonly update?: string;
}
export declare function databaseMigrationMigrationTimeoutsToTerraform(struct?: DatabaseMigrationMigrationTimeouts | cdktf.IResolvable): any;
export declare function databaseMigrationMigrationTimeoutsToHclTerraform(struct?: DatabaseMigrationMigrationTimeouts | cdktf.IResolvable): any;
export declare class DatabaseMigrationMigrationTimeoutsOutputReference 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(): DatabaseMigrationMigrationTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationMigrationTimeouts | cdktf.IResolvable | undefined);
    private _create?;
    get create(): string;
    set create(value: string);
    resetCreate(): void;
    get createInput(): string | undefined;
    private _delete?;
    get delete(): string;
    set delete(value: string);
    resetDelete(): void;
    get deleteInput(): string | undefined;
    private _update?;
    get update(): string;
    set update(value: string);
    resetUpdate(): void;
    get updateInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration oci_database_migration_migration}
*/
export declare class DatabaseMigrationMigration extends cdktf.TerraformResource {
    static readonly tfResourceType = "oci_database_migration_migration";
    /**
    * Generates CDKTF code for importing a DatabaseMigrationMigration 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 DatabaseMigrationMigration to import
    * @param importFromId The id of the existing DatabaseMigrationMigration that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/database_migration_migration#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DatabaseMigrationMigration 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/oracle/oci/6.18.0/docs/resources/database_migration_migration oci_database_migration_migration} 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 DatabaseMigrationMigrationConfig
    */
    constructor(scope: Construct, id: string, config: DatabaseMigrationMigrationConfig);
    private _bulkIncludeExcludeData?;
    get bulkIncludeExcludeData(): string;
    set bulkIncludeExcludeData(value: string);
    resetBulkIncludeExcludeData(): void;
    get bulkIncludeExcludeDataInput(): string | undefined;
    private _compartmentId?;
    get compartmentId(): string;
    set compartmentId(value: string);
    get compartmentIdInput(): string | undefined;
    private _databaseCombination?;
    get databaseCombination(): string;
    set databaseCombination(value: string);
    get databaseCombinationInput(): string | undefined;
    private _definedTags?;
    get definedTags(): {
        [key: string]: string;
    };
    set definedTags(value: {
        [key: string]: string;
    });
    resetDefinedTags(): void;
    get definedTagsInput(): {
        [key: string]: string;
    } | undefined;
    private _description?;
    get description(): string;
    set description(value: string);
    resetDescription(): void;
    get descriptionInput(): string | undefined;
    private _displayName?;
    get displayName(): string;
    set displayName(value: string);
    resetDisplayName(): void;
    get displayNameInput(): string | undefined;
    get executingJobId(): string;
    private _freeformTags?;
    get freeformTags(): {
        [key: string]: string;
    };
    set freeformTags(value: {
        [key: string]: string;
    });
    resetFreeformTags(): void;
    get freeformTagsInput(): {
        [key: string]: string;
    } | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    get lifecycleDetails(): string;
    private _sourceContainerDatabaseConnectionId?;
    get sourceContainerDatabaseConnectionId(): string;
    set sourceContainerDatabaseConnectionId(value: string);
    resetSourceContainerDatabaseConnectionId(): void;
    get sourceContainerDatabaseConnectionIdInput(): string | undefined;
    private _sourceDatabaseConnectionId?;
    get sourceDatabaseConnectionId(): string;
    set sourceDatabaseConnectionId(value: string);
    get sourceDatabaseConnectionIdInput(): string | undefined;
    get state(): string;
    private _systemTags;
    get systemTags(): cdktf.StringMap;
    private _targetDatabaseConnectionId?;
    get targetDatabaseConnectionId(): string;
    set targetDatabaseConnectionId(value: string);
    get targetDatabaseConnectionIdInput(): string | undefined;
    get timeCreated(): string;
    get timeLastMigration(): string;
    get timeUpdated(): string;
    private _type?;
    get type(): string;
    set type(value: string);
    get typeInput(): string | undefined;
    get waitAfter(): string;
    private _advancedParameters;
    get advancedParameters(): DatabaseMigrationMigrationAdvancedParametersList;
    putAdvancedParameters(value: DatabaseMigrationMigrationAdvancedParameters[] | cdktf.IResolvable): void;
    resetAdvancedParameters(): void;
    get advancedParametersInput(): cdktf.IResolvable | DatabaseMigrationMigrationAdvancedParameters[] | undefined;
    private _advisorSettings;
    get advisorSettings(): DatabaseMigrationMigrationAdvisorSettingsOutputReference;
    putAdvisorSettings(value: DatabaseMigrationMigrationAdvisorSettings): void;
    resetAdvisorSettings(): void;
    get advisorSettingsInput(): DatabaseMigrationMigrationAdvisorSettings | undefined;
    private _dataTransferMediumDetails;
    get dataTransferMediumDetails(): DatabaseMigrationMigrationDataTransferMediumDetailsOutputReference;
    putDataTransferMediumDetails(value: DatabaseMigrationMigrationDataTransferMediumDetails): void;
    resetDataTransferMediumDetails(): void;
    get dataTransferMediumDetailsInput(): DatabaseMigrationMigrationDataTransferMediumDetails | undefined;
    private _excludeObjects;
    get excludeObjects(): DatabaseMigrationMigrationExcludeObjectsList;
    putExcludeObjects(value: DatabaseMigrationMigrationExcludeObjects[] | cdktf.IResolvable): void;
    resetExcludeObjects(): void;
    get excludeObjectsInput(): cdktf.IResolvable | DatabaseMigrationMigrationExcludeObjects[] | undefined;
    private _ggsDetails;
    get ggsDetails(): DatabaseMigrationMigrationGgsDetailsOutputReference;
    putGgsDetails(value: DatabaseMigrationMigrationGgsDetails): void;
    resetGgsDetails(): void;
    get ggsDetailsInput(): DatabaseMigrationMigrationGgsDetails | undefined;
    private _hubDetails;
    get hubDetails(): DatabaseMigrationMigrationHubDetailsOutputReference;
    putHubDetails(value: DatabaseMigrationMigrationHubDetails): void;
    resetHubDetails(): void;
    get hubDetailsInput(): DatabaseMigrationMigrationHubDetails | undefined;
    private _includeObjects;
    get includeObjects(): DatabaseMigrationMigrationIncludeObjectsList;
    putIncludeObjects(value: DatabaseMigrationMigrationIncludeObjects[] | cdktf.IResolvable): void;
    resetIncludeObjects(): void;
    get includeObjectsInput(): cdktf.IResolvable | DatabaseMigrationMigrationIncludeObjects[] | undefined;
    private _initialLoadSettings;
    get initialLoadSettings(): DatabaseMigrationMigrationInitialLoadSettingsOutputReference;
    putInitialLoadSettings(value: DatabaseMigrationMigrationInitialLoadSettings): void;
    resetInitialLoadSettings(): void;
    get initialLoadSettingsInput(): DatabaseMigrationMigrationInitialLoadSettings | undefined;
    private _timeouts;
    get timeouts(): DatabaseMigrationMigrationTimeoutsOutputReference;
    putTimeouts(value: DatabaseMigrationMigrationTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | DatabaseMigrationMigrationTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
