import type * as cxapi from '@aws-cdk/cx-api';
import { StackCollection } from './api/cxapp/cloud-assembly';
import { Deployments, ResourcesToImport } from './api/deployments';
import { DeployOptions } from './cli/cdk-toolkit';
export interface ResourceMigratorProps {
    deployments: Deployments;
}
type ResourceMigratorOptions = Pick<DeployOptions, 'roleArn' | 'toolkitStackName' | 'deploymentMethod' | 'progress' | 'rollback'>;
export declare class ResourceMigrator {
    private readonly props;
    constructor(props: ResourceMigratorProps);
    /**
     * Checks to see if a migrate.json file exists. If it does and the source is either `filepath` or
     * is in the same environment as the stack deployment, a new stack is created and the resources are
     * migrated to the stack using an IMPORT changeset. The normal deployment will resume after this is complete
     * to add back in any outputs and the CDKMetadata.
     */
    tryMigrateResources(stacks: StackCollection, options: ResourceMigratorOptions): Promise<void>;
    /**
     * Creates a new stack with just the resources to be migrated
     */
    private performResourceMigration;
    tryGetResources(environment: cxapi.Environment): Promise<ResourcesToImport | undefined>;
}
export {};
