export type HealthStatus = 'healthy' | 'warning' | 'error';
export interface ExtensionHealth {
    /** Extension ID */
    extensionId: string;
    /** Overall health status */
    status: HealthStatus;
    /** Installed version */
    version?: string;
    /** Expected version from lockfile */
    expectedVersion?: string;
    /** List of issues */
    issues: string[];
    /** Last check timestamp */
    checkedAt: string;
}
export interface HealthReport {
    /** Overall status */
    status: HealthStatus;
    /** Per-extension health */
    extensions: ExtensionHealth[];
    /** Summary counts */
    summary: {
        total: number;
        healthy: number;
        warning: number;
        error: number;
    };
    /** Check timestamp */
    checkedAt: string;
}
export declare class ExtensionHealthChecker {
    private readonly extensionsDir;
    constructor(extensionsDir?: string);
    /**
     * Check health of a single extension
     */
    checkExtension(extensionId: string): Promise<ExtensionHealth>;
    /**
     * Check health of all extensions
     */
    checkAll(): Promise<HealthReport>;
    /**
     * Fix common issues automatically
     */
    fixIssues(extensionId: string): Promise<{
        fixed: string[];
        failed: string[];
    }>;
    /**
     * Check for orphaned extensions (not in lockfile)
     */
    findOrphaned(): Promise<string[]>;
    /**
     * Generate health report as string
     */
    formatReport(report: HealthReport): string;
}
export declare function getExtensionHealthChecker(extensionsDir?: string): ExtensionHealthChecker;
export declare function resetExtensionHealthChecker(): void;
export declare function checkExtensionHealth(extensionId: string): Promise<ExtensionHealth>;
export declare function checkAllExtensionsHealth(): Promise<HealthReport>;
