import { ConfigManager } from '../../config/config-manager.js';
import { DeprecationNotice, DeprecationPlan, DeprecationConfig, MigrationResult } from './types.js';
export declare class DeprecationManager {
    private configManager;
    private registryPath;
    private config;
    constructor(configManager: ConfigManager);
    init(): Promise<void>;
    private ensureRegistry;
    markAsDeprecated(notice: Omit<DeprecationNotice, 'id' | 'deprecatedAt'>): Promise<DeprecationNotice>;
    createDeprecationPlan(objectIds: string[]): Promise<DeprecationPlan>;
    executeUpgrade(plan: DeprecationPlan, stepIds?: number[]): Promise<MigrationResult>;
    checkDeprecations(objectType?: string): Promise<DeprecationNotice[]>;
    generateUpgradeGuide(noticeId: string): Promise<string>;
    private analyzeAffectedObjects;
    private generateUpgradeSteps;
    private calculateImpact;
    private createBackup;
    private executeAutomatedStep;
    private findDependencies;
    private generateManualSteps;
    private generateId;
    private loadRegistry;
    private saveRegistry;
    updateConfig(config: Partial<DeprecationConfig>): void;
}
//# sourceMappingURL=deprecation-manager.d.ts.map