/**
 * JSON-Driven IDE Launcher Service
 *
 * Replaces the 5 hard-coded IDE launcher classes with a single service that
 * derives editor commands from the JSON tool metadata files. Reads from the
 * already-loaded TOOL_METADATA record, filters by category "ide" and presence
 * of openDirectory, and performs {dir} placeholder substitution at launch time.
 */
import type { IIdeLauncherService, LaunchIdeResult } from '../../../application/ports/output/services/ide-launcher-service.interface.js';
/**
 * Resolve a platform-specific value from a string or per-platform record.
 * When the value is a plain string, returns it directly.
 * When the value is a record, returns the entry for the current os.platform(),
 * falling back to the first value if the current platform is not present.
 */
export declare function resolvePlatformValue(value: string | Record<string, string>): string;
export declare class JsonDrivenIdeLauncherService implements IIdeLauncherService {
    private readonly editors;
    constructor();
    launch(editorId: string, directoryPath: string, options?: {
        headless?: boolean;
    }): Promise<LaunchIdeResult>;
    checkAvailability(editorId: string): Promise<boolean>;
}
//# sourceMappingURL=json-driven-ide-launcher.service.d.ts.map