import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Migration resource in Oracle Cloud Infrastructure Database Migration service.
 *
 * Display Migration details.
 *
 * Note: If you wish to use the DMS deprecated API version /20210929 it is necessary to pin the Terraform Provider version to v5.47.0. Newer Terraform provider versions will not support the DMS deprecated API version /20210929
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testMigration = oci.databasemigration.getMigration({
 *     migrationId: testMigrationOciDatabaseMigrationMigration.id,
 * });
 * ```
 */
export declare function getMigration(args: GetMigrationArgs, opts?: pulumi.InvokeOptions): Promise<GetMigrationResult>;
/**
 * A collection of arguments for invoking getMigration.
 */
export interface GetMigrationArgs {
    /**
     * The OCID of the migration
     */
    migrationId: string;
}
/**
 * A collection of values returned by getMigration.
 */
export interface GetMigrationResult {
    /**
     * List of Migration Parameter objects.
     */
    readonly advancedParameters: outputs.DatabaseMigration.GetMigrationAdvancedParameter[];
    /**
     * Details about Oracle Advisor Settings.
     */
    readonly advisorSettings: outputs.DatabaseMigration.GetMigrationAdvisorSetting[];
    /**
     * The OCID of the resource being referenced.
     */
    readonly assessmentId: string;
    readonly bulkIncludeExcludeData: string;
    /**
     * The OCID of the resource being referenced.
     */
    readonly compartmentId: string;
    /**
     * Optional additional properties for data transfer.
     */
    readonly dataTransferMediumDetails: outputs.DatabaseMigration.GetMigrationDataTransferMediumDetail[];
    /**
     * The combination of source and target databases participating in a migration. Example: ORACLE means the migration is meant for migrating Oracle source and target databases.
     */
    readonly databaseCombination: string;
    /**
     * Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}`
     */
    readonly definedTags: {
        [key: string]: string;
    };
    /**
     * A user-friendly description. Does not have to be unique, and it's changeable.  Avoid entering confidential information.
     */
    readonly description: string;
    /**
     * A user-friendly name. Does not have to be unique, and it's changeable.  Avoid entering confidential information.
     */
    readonly displayName: string;
    readonly excludeObjects: outputs.DatabaseMigration.GetMigrationExcludeObject[];
    /**
     * The OCID of the resource being referenced.
     */
    readonly executingJobId: string;
    /**
     * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.  For more information, see Resource Tags. Example: {"Department": "Finance"}
     */
    readonly freeformTags: {
        [key: string]: string;
    };
    /**
     * Details for Oracle GoldenGate Deployment (Internally managed by the service, not required and will be ignored if provided).
     */
    readonly ggsDetails: outputs.DatabaseMigration.GetMigrationGgsDetail[];
    /**
     * Details for Oracle GoldenGate Marketplace  Instance / Deployment (Currently not supported for MySQL migrations).
     */
    readonly hubDetails: outputs.DatabaseMigration.GetMigrationHubDetail[];
    /**
     * The OCID of the resource being referenced.
     */
    readonly id: string;
    readonly includeObjects: outputs.DatabaseMigration.GetMigrationIncludeObject[];
    /**
     * Optional settings for Data Pump Export and Import jobs
     */
    readonly initialLoadSettings: outputs.DatabaseMigration.GetMigrationInitialLoadSetting[];
    /**
     * Additional status related to the execution and current state of the Migration.
     */
    readonly lifecycleDetails: string;
    readonly migrationId: string;
    /**
     * The OCID of the resource being referenced.
     */
    readonly sourceContainerDatabaseConnectionId: string;
    /**
     * The OCID of the resource being referenced.
     */
    readonly sourceDatabaseConnectionId: string;
    /**
     * The OCID of the resource being referenced.
     */
    readonly sourceStandbyDatabaseConnectionId: string;
    /**
     * The current state of the Migration resource.
     */
    readonly state: string;
    /**
     * Usage of system tag keys. These predefined keys are scoped to namespaces. Example: `{"orcl-cloud.free-tier-retained": "true"}`
     */
    readonly systemTags: {
        [key: string]: string;
    };
    /**
     * The OCID of the resource being referenced.
     */
    readonly targetDatabaseConnectionId: string;
    /**
     * An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
     */
    readonly timeCreated: string;
    /**
     * An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
     */
    readonly timeLastMigration: string;
    /**
     * An RFC3339 formatted datetime string such as `2016-08-25T21:10:29.600Z`.
     */
    readonly timeUpdated: string;
    /**
     * The type of the migration to be performed. Example: ONLINE if no downtime is preferred for a migration. This method uses Oracle GoldenGate for replication.
     */
    readonly type: string;
    /**
     * You can optionally pause a migration after a job phase. This property allows you to optionally specify the phase after which you can pause the migration.
     */
    readonly waitAfter: string;
}
/**
 * This data source provides details about a specific Migration resource in Oracle Cloud Infrastructure Database Migration service.
 *
 * Display Migration details.
 *
 * Note: If you wish to use the DMS deprecated API version /20210929 it is necessary to pin the Terraform Provider version to v5.47.0. Newer Terraform provider versions will not support the DMS deprecated API version /20210929
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testMigration = oci.databasemigration.getMigration({
 *     migrationId: testMigrationOciDatabaseMigrationMigration.id,
 * });
 * ```
 */
export declare function getMigrationOutput(args: GetMigrationOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetMigrationResult>;
/**
 * A collection of arguments for invoking getMigration.
 */
export interface GetMigrationOutputArgs {
    /**
     * The OCID of the migration
     */
    migrationId: pulumi.Input<string>;
}
//# sourceMappingURL=getMigration.d.ts.map