/**
 * Copyright (c) HashiCorp, Inc.
 * SPDX-License-Identifier: MPL-2.0
 */
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DatabaseMigrationServiceMigrationJobConfig extends cdktf.TerraformMetaArguments {
    /**
    * The name of the destination connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{destinationConnectionProfile}.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#destination DatabaseMigrationServiceMigrationJob#destination}
    */
    readonly destination: string;
    /**
    * The migration job display name.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#display_name DatabaseMigrationServiceMigrationJob#display_name}
    */
    readonly displayName?: string;
    /**
    * The path to the dump file in Google Cloud Storage,
    * in the format: (gs://[BUCKET_NAME]/[OBJECT_NAME]).
    * This field and the "dump_flags" field are mutually exclusive.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#dump_path DatabaseMigrationServiceMigrationJob#dump_path}
    */
    readonly dumpPath?: string;
    /**
    * The type of the data dump. Supported for MySQL to CloudSQL for MySQL
    * migrations only. Possible values: ["LOGICAL", "PHYSICAL"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#dump_type DatabaseMigrationServiceMigrationJob#dump_type}
    */
    readonly dumpType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#id DatabaseMigrationServiceMigrationJob#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;
    /**
    * The resource labels for migration job to use to annotate any related underlying resources such as Compute Engine VMs.
    *
    *
    * **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
    * Please refer to the field 'effective_labels' for all of the labels present on the resource.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#labels DatabaseMigrationServiceMigrationJob#labels}
    */
    readonly labels?: {
        [key: string]: string;
    };
    /**
    * The location where the migration job should reside.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#location DatabaseMigrationServiceMigrationJob#location}
    */
    readonly location?: string;
    /**
    * The ID of the migration job.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#migration_job_id DatabaseMigrationServiceMigrationJob#migration_job_id}
    */
    readonly migrationJobId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#project DatabaseMigrationServiceMigrationJob#project}
    */
    readonly project?: string;
    /**
    * The name of the source connection profile resource in the form of projects/{project}/locations/{location}/connectionProfiles/{sourceConnectionProfile}.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#source DatabaseMigrationServiceMigrationJob#source}
    */
    readonly source: string;
    /**
    * The type of the migration job. Possible values: ["ONE_TIME", "CONTINUOUS"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#type DatabaseMigrationServiceMigrationJob#type}
    */
    readonly type: string;
    /**
    * dump_flags block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#dump_flags DatabaseMigrationServiceMigrationJob#dump_flags}
    */
    readonly dumpFlags?: DatabaseMigrationServiceMigrationJobDumpFlags;
    /**
    * performance_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#performance_config DatabaseMigrationServiceMigrationJob#performance_config}
    */
    readonly performanceConfig?: DatabaseMigrationServiceMigrationJobPerformanceConfig;
    /**
    * reverse_ssh_connectivity block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#reverse_ssh_connectivity DatabaseMigrationServiceMigrationJob#reverse_ssh_connectivity}
    */
    readonly reverseSshConnectivity?: DatabaseMigrationServiceMigrationJobReverseSshConnectivity;
    /**
    * static_ip_connectivity block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#static_ip_connectivity DatabaseMigrationServiceMigrationJob#static_ip_connectivity}
    */
    readonly staticIpConnectivity?: DatabaseMigrationServiceMigrationJobStaticIpConnectivity;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#timeouts DatabaseMigrationServiceMigrationJob#timeouts}
    */
    readonly timeouts?: DatabaseMigrationServiceMigrationJobTimeouts;
    /**
    * vpc_peering_connectivity block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#vpc_peering_connectivity DatabaseMigrationServiceMigrationJob#vpc_peering_connectivity}
    */
    readonly vpcPeeringConnectivity?: DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity;
}
export interface DatabaseMigrationServiceMigrationJobError {
}
export declare function databaseMigrationServiceMigrationJobErrorToTerraform(struct?: DatabaseMigrationServiceMigrationJobError): any;
export declare function databaseMigrationServiceMigrationJobErrorToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobError): any;
export declare class DatabaseMigrationServiceMigrationJobErrorOutputReference 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(): DatabaseMigrationServiceMigrationJobError | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobError | undefined);
    get code(): number;
    private _details;
    get details(): cdktf.StringMapList;
    get message(): string;
}
export declare class DatabaseMigrationServiceMigrationJobErrorList 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): DatabaseMigrationServiceMigrationJobErrorOutputReference;
}
export interface DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags {
    /**
    * The name of the flag
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#name DatabaseMigrationServiceMigrationJob#name}
    */
    readonly name?: string;
    /**
    * The vale of the flag
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#value DatabaseMigrationServiceMigrationJob#value}
    */
    readonly value?: string;
}
export declare function databaseMigrationServiceMigrationJobDumpFlagsDumpFlagsToTerraform(struct?: DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags | cdktf.IResolvable): any;
export declare function databaseMigrationServiceMigrationJobDumpFlagsDumpFlagsToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags | cdktf.IResolvable): any;
export declare class DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlagsOutputReference 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(): DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags | cdktf.IResolvable | 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 DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlagsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags[] | 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): DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlagsOutputReference;
}
export interface DatabaseMigrationServiceMigrationJobDumpFlags {
    /**
    * dump_flags block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#dump_flags DatabaseMigrationServiceMigrationJob#dump_flags}
    */
    readonly dumpFlags?: DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags[] | cdktf.IResolvable;
}
export declare function databaseMigrationServiceMigrationJobDumpFlagsToTerraform(struct?: DatabaseMigrationServiceMigrationJobDumpFlagsOutputReference | DatabaseMigrationServiceMigrationJobDumpFlags): any;
export declare function databaseMigrationServiceMigrationJobDumpFlagsToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobDumpFlagsOutputReference | DatabaseMigrationServiceMigrationJobDumpFlags): any;
export declare class DatabaseMigrationServiceMigrationJobDumpFlagsOutputReference 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(): DatabaseMigrationServiceMigrationJobDumpFlags | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobDumpFlags | undefined);
    private _dumpFlags;
    get dumpFlags(): DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlagsList;
    putDumpFlags(value: DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags[] | cdktf.IResolvable): void;
    resetDumpFlags(): void;
    get dumpFlagsInput(): cdktf.IResolvable | DatabaseMigrationServiceMigrationJobDumpFlagsDumpFlags[] | undefined;
}
export interface DatabaseMigrationServiceMigrationJobPerformanceConfig {
    /**
    * Initial dump parallelism level. Possible values: ["MIN", "OPTIMAL", "MAX"]
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#dump_parallel_level DatabaseMigrationServiceMigrationJob#dump_parallel_level}
    */
    readonly dumpParallelLevel?: string;
}
export declare function databaseMigrationServiceMigrationJobPerformanceConfigToTerraform(struct?: DatabaseMigrationServiceMigrationJobPerformanceConfigOutputReference | DatabaseMigrationServiceMigrationJobPerformanceConfig): any;
export declare function databaseMigrationServiceMigrationJobPerformanceConfigToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobPerformanceConfigOutputReference | DatabaseMigrationServiceMigrationJobPerformanceConfig): any;
export declare class DatabaseMigrationServiceMigrationJobPerformanceConfigOutputReference 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(): DatabaseMigrationServiceMigrationJobPerformanceConfig | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobPerformanceConfig | undefined);
    private _dumpParallelLevel?;
    get dumpParallelLevel(): string;
    set dumpParallelLevel(value: string);
    resetDumpParallelLevel(): void;
    get dumpParallelLevelInput(): string | undefined;
}
export interface DatabaseMigrationServiceMigrationJobReverseSshConnectivity {
    /**
    * The name of the virtual machine (Compute Engine) used as the bastion server
    * for the SSH tunnel.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#vm DatabaseMigrationServiceMigrationJob#vm}
    */
    readonly vm?: string;
    /**
    * The IP of the virtual machine (Compute Engine) used as the bastion server
    * for the SSH tunnel.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#vm_ip DatabaseMigrationServiceMigrationJob#vm_ip}
    */
    readonly vmIp?: string;
    /**
    * The forwarding port of the virtual machine (Compute Engine) used as the
    * bastion server for the SSH tunnel.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#vm_port DatabaseMigrationServiceMigrationJob#vm_port}
    */
    readonly vmPort?: number;
    /**
    * The name of the VPC to peer with the Cloud SQL private network.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#vpc DatabaseMigrationServiceMigrationJob#vpc}
    */
    readonly vpc?: string;
}
export declare function databaseMigrationServiceMigrationJobReverseSshConnectivityToTerraform(struct?: DatabaseMigrationServiceMigrationJobReverseSshConnectivityOutputReference | DatabaseMigrationServiceMigrationJobReverseSshConnectivity): any;
export declare function databaseMigrationServiceMigrationJobReverseSshConnectivityToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobReverseSshConnectivityOutputReference | DatabaseMigrationServiceMigrationJobReverseSshConnectivity): any;
export declare class DatabaseMigrationServiceMigrationJobReverseSshConnectivityOutputReference 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(): DatabaseMigrationServiceMigrationJobReverseSshConnectivity | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobReverseSshConnectivity | undefined);
    private _vm?;
    get vm(): string;
    set vm(value: string);
    resetVm(): void;
    get vmInput(): string | undefined;
    private _vmIp?;
    get vmIp(): string;
    set vmIp(value: string);
    resetVmIp(): void;
    get vmIpInput(): string | undefined;
    private _vmPort?;
    get vmPort(): number;
    set vmPort(value: number);
    resetVmPort(): void;
    get vmPortInput(): number | undefined;
    private _vpc?;
    get vpc(): string;
    set vpc(value: string);
    resetVpc(): void;
    get vpcInput(): string | undefined;
}
export interface DatabaseMigrationServiceMigrationJobStaticIpConnectivity {
}
export declare function databaseMigrationServiceMigrationJobStaticIpConnectivityToTerraform(struct?: DatabaseMigrationServiceMigrationJobStaticIpConnectivityOutputReference | DatabaseMigrationServiceMigrationJobStaticIpConnectivity): any;
export declare function databaseMigrationServiceMigrationJobStaticIpConnectivityToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobStaticIpConnectivityOutputReference | DatabaseMigrationServiceMigrationJobStaticIpConnectivity): any;
export declare class DatabaseMigrationServiceMigrationJobStaticIpConnectivityOutputReference 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(): DatabaseMigrationServiceMigrationJobStaticIpConnectivity | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobStaticIpConnectivity | undefined);
}
export interface DatabaseMigrationServiceMigrationJobTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#create DatabaseMigrationServiceMigrationJob#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#delete DatabaseMigrationServiceMigrationJob#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#update DatabaseMigrationServiceMigrationJob#update}
    */
    readonly update?: string;
}
export declare function databaseMigrationServiceMigrationJobTimeoutsToTerraform(struct?: DatabaseMigrationServiceMigrationJobTimeouts | cdktf.IResolvable): any;
export declare function databaseMigrationServiceMigrationJobTimeoutsToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobTimeouts | cdktf.IResolvable): any;
export declare class DatabaseMigrationServiceMigrationJobTimeoutsOutputReference 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(): DatabaseMigrationServiceMigrationJobTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobTimeouts | 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;
}
export interface DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity {
    /**
    * The name of the VPC network to peer with the Cloud SQL private network.
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#vpc DatabaseMigrationServiceMigrationJob#vpc}
    */
    readonly vpc?: string;
}
export declare function databaseMigrationServiceMigrationJobVpcPeeringConnectivityToTerraform(struct?: DatabaseMigrationServiceMigrationJobVpcPeeringConnectivityOutputReference | DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity): any;
export declare function databaseMigrationServiceMigrationJobVpcPeeringConnectivityToHclTerraform(struct?: DatabaseMigrationServiceMigrationJobVpcPeeringConnectivityOutputReference | DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity): any;
export declare class DatabaseMigrationServiceMigrationJobVpcPeeringConnectivityOutputReference 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(): DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity | undefined;
    set internalValue(value: DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity | undefined);
    private _vpc?;
    get vpc(): string;
    set vpc(value: string);
    resetVpc(): void;
    get vpcInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job google_database_migration_service_migration_job}
*/
export declare class DatabaseMigrationServiceMigrationJob extends cdktf.TerraformResource {
    static readonly tfResourceType = "google_database_migration_service_migration_job";
    /**
    * Generates CDKTF code for importing a DatabaseMigrationServiceMigrationJob 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 DatabaseMigrationServiceMigrationJob to import
    * @param importFromId The id of the existing DatabaseMigrationServiceMigrationJob that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DatabaseMigrationServiceMigrationJob to import is found
    */
    static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
    /**
    * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.36.0/docs/resources/database_migration_service_migration_job google_database_migration_service_migration_job} 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 DatabaseMigrationServiceMigrationJobConfig
    */
    constructor(scope: Construct, id: string, config: DatabaseMigrationServiceMigrationJobConfig);
    get createTime(): string;
    private _destination?;
    get destination(): string;
    set destination(value: string);
    get destinationInput(): string | undefined;
    private _displayName?;
    get displayName(): string;
    set displayName(value: string);
    resetDisplayName(): void;
    get displayNameInput(): string | undefined;
    private _dumpPath?;
    get dumpPath(): string;
    set dumpPath(value: string);
    resetDumpPath(): void;
    get dumpPathInput(): string | undefined;
    private _dumpType?;
    get dumpType(): string;
    set dumpType(value: string);
    resetDumpType(): void;
    get dumpTypeInput(): string | undefined;
    private _effectiveLabels;
    get effectiveLabels(): cdktf.StringMap;
    private _error;
    get error(): DatabaseMigrationServiceMigrationJobErrorList;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _labels?;
    get labels(): {
        [key: string]: string;
    };
    set labels(value: {
        [key: string]: string;
    });
    resetLabels(): void;
    get labelsInput(): {
        [key: string]: string;
    } | undefined;
    private _location?;
    get location(): string;
    set location(value: string);
    resetLocation(): void;
    get locationInput(): string | undefined;
    private _migrationJobId?;
    get migrationJobId(): string;
    set migrationJobId(value: string);
    get migrationJobIdInput(): string | undefined;
    get name(): string;
    get phase(): string;
    private _project?;
    get project(): string;
    set project(value: string);
    resetProject(): void;
    get projectInput(): string | undefined;
    private _source?;
    get source(): string;
    set source(value: string);
    get sourceInput(): string | undefined;
    get state(): string;
    private _terraformLabels;
    get terraformLabels(): cdktf.StringMap;
    private _type?;
    get type(): string;
    set type(value: string);
    get typeInput(): string | undefined;
    private _dumpFlags;
    get dumpFlags(): DatabaseMigrationServiceMigrationJobDumpFlagsOutputReference;
    putDumpFlags(value: DatabaseMigrationServiceMigrationJobDumpFlags): void;
    resetDumpFlags(): void;
    get dumpFlagsInput(): DatabaseMigrationServiceMigrationJobDumpFlags | undefined;
    private _performanceConfig;
    get performanceConfig(): DatabaseMigrationServiceMigrationJobPerformanceConfigOutputReference;
    putPerformanceConfig(value: DatabaseMigrationServiceMigrationJobPerformanceConfig): void;
    resetPerformanceConfig(): void;
    get performanceConfigInput(): DatabaseMigrationServiceMigrationJobPerformanceConfig | undefined;
    private _reverseSshConnectivity;
    get reverseSshConnectivity(): DatabaseMigrationServiceMigrationJobReverseSshConnectivityOutputReference;
    putReverseSshConnectivity(value: DatabaseMigrationServiceMigrationJobReverseSshConnectivity): void;
    resetReverseSshConnectivity(): void;
    get reverseSshConnectivityInput(): DatabaseMigrationServiceMigrationJobReverseSshConnectivity | undefined;
    private _staticIpConnectivity;
    get staticIpConnectivity(): DatabaseMigrationServiceMigrationJobStaticIpConnectivityOutputReference;
    putStaticIpConnectivity(value: DatabaseMigrationServiceMigrationJobStaticIpConnectivity): void;
    resetStaticIpConnectivity(): void;
    get staticIpConnectivityInput(): DatabaseMigrationServiceMigrationJobStaticIpConnectivity | undefined;
    private _timeouts;
    get timeouts(): DatabaseMigrationServiceMigrationJobTimeoutsOutputReference;
    putTimeouts(value: DatabaseMigrationServiceMigrationJobTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | DatabaseMigrationServiceMigrationJobTimeouts | undefined;
    private _vpcPeeringConnectivity;
    get vpcPeeringConnectivity(): DatabaseMigrationServiceMigrationJobVpcPeeringConnectivityOutputReference;
    putVpcPeeringConnectivity(value: DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity): void;
    resetVpcPeeringConnectivity(): void;
    get vpcPeeringConnectivityInput(): DatabaseMigrationServiceMigrationJobVpcPeeringConnectivity | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
