import { Migration, MigrationRecord, MigrationConfig, MigrationValidation, MigrationTemplate } from './types.js';
export declare class MigrationManager {
    private config;
    private history;
    constructor(config: MigrationConfig);
    createMigration(name: string, type: Migration['type'], template?: MigrationTemplate): Promise<Migration>;
    runMigrations(options?: {
        target?: string;
        dryRun?: boolean;
        force?: boolean;
    }): Promise<MigrationRecord[]>;
    rollback(options?: {
        steps?: number;
        target?: string;
        force?: boolean;
    }): Promise<MigrationRecord[]>;
    getMigrationStatus(): Promise<{
        current: string;
        pending: number;
        executed: number;
        failed: number;
    }>;
    validateMigration(migration: Migration): Promise<MigrationValidation>;
    private createMigrationPlan;
    private buildDependencyGraph;
    private topologicalSort;
    private assessMigrationRisks;
    private estimateMigrationDuration;
    private executeMigration;
    private executeRollback;
    private runMigrationScript;
    private getPendingMigrations;
    private loadAllMigrations;
    private loadMigration;
    private loadHistory;
    private updateHistory;
    private removeFromHistory;
    private generateVersion;
    private calculateChecksum;
    private inferMigrationType;
    private validateSyntax;
    private migrationExists;
    private runHook;
    private getDefaultTemplate;
    private applyTemplate;
    private log;
}
//# sourceMappingURL=migration-manager.d.ts.map