/**
 * Application registry management
 */
import { ApplicationRegistry, ApplicationDefinition, PlatformConfig } from "../types/index.js";
export declare class AppRegistry {
    private registryPath;
    private registry;
    private fs;
    private basePath;
    constructor(basePath?: string);
    /**
     * Initialize the registry with default applications
     */
    private createDefaultRegistry;
    /**
     * Load the application registry
     */
    load(): Promise<ApplicationRegistry>;
    /**
     * Save the application registry
     */
    save(): Promise<void>;
    /**
     * Get all enabled applications
     */
    getEnabledApplications(): Promise<Record<string, ApplicationDefinition>>;
    /**
     * Get application by ID
     */
    getApplication(appId: string): Promise<ApplicationDefinition | null>;
    /**
     * Add or update an application
     */
    setApplication(appId: string, app: ApplicationDefinition): Promise<void>;
    /**
     * Remove an application
     */
    removeApplication(appId: string): Promise<void>;
    /**
     * Get current platform (for testing support)
     */
    private getCurrentPlatform;
    /**
     * Get platform-specific configuration for an application
     */
    getPlatformConfig(app: ApplicationDefinition): PlatformConfig | null;
    /**
     * Resolve path with home directory and environment variables
     */
    resolvePath(path: string): string;
    /**
     * Detect if an application is installed
     */
    isApplicationInstalled(app: ApplicationDefinition): Promise<boolean>;
}
//# sourceMappingURL=registry.d.ts.map