import { getHighestProjectVersion, confirmNoCorruption } from "./migrationLists";
import { RT } from "../../r/R/RecordTypes";
import { RecordNode } from "../../r/R/RecordNode";
export declare const initialMigrateProjectRJson: (projectJson: any, uptoVersion?: number) => RecordNode<RT.project>;
/**
 * Applies migrations for "r" type and returns a new project reference
 */
export declare const migrateProjectRJson: (projectJson: any, uptoVersion?: number) => RecordNode<RT.project>;
/**
 * Migrations to be run only on a new project (once)
 */
export declare const migrationsForNewProject: (projectJson: any) => RecordNode<RT.project>;
/**
 * Healthcheck migrations that are supposed to be run many times, ideally on the server
 * WIP
 */
export declare const runHealthCheckMigrations: (projectJson: RecordNode<RT.project>) => {
    projectJson: RecordNode<RT.project>;
    corrections: string[];
};
export declare const createNewProject: () => RecordNode<RT.project>;
export { getHighestProjectVersion, confirmNoCorruption };
