import { MigrationsConfig } from '../configuration/config-loader';
export interface ModuleLockValidation {
    isLocked: boolean;
    reason?: string;
    lockIcon: string;
}
export declare class ModuleLockManager {
    private config;
    constructor(config: MigrationsConfig | null);
    isModuleLocked(moduleId: string): boolean;
    getModuleLockReason(moduleId: string): string | undefined;
    validateModuleLock(moduleId: string): ModuleLockValidation;
    validateRollbackLock(moduleIds: string[]): {
        blockedModules: string[];
        lockReasons: Record<string, string>;
    };
    getLockedModules(): string[];
    validateMigrationLock(moduleIds: string[]): {
        canMigrate: boolean;
        blockedModules: string[];
        lockReasons: Record<string, string>;
    };
    static createLockManager(config: MigrationsConfig | null): ModuleLockManager;
}
