/** * Platform Registry — Single source of truth for platform functions and derived helpers * * Supports Claude Code and OpenCode. */ import { type AITool, type CliFlag } from "../types/ai-tools.js"; /** All platform IDs */ export declare const PLATFORM_IDS: AITool[]; /** All platform config directory names */ export declare const CONFIG_DIRS: string[]; /** All directories managed by AIM Studio (including .aim-studio itself) */ export declare const ALL_MANAGED_DIRS: string[]; /** * Detect which platforms are configured by checking for directory existence */ export declare function getConfiguredPlatforms(cwd: string): Set; /** * Get platform IDs that have Python hooks (for Windows encoding detection) */ export declare function getPlatformsWithPythonHooks(): AITool[]; /** * Check if a path starts with any managed directory */ export declare function isManagedPath(dirPath: string): boolean; /** * Check if a directory name is a managed root directory (should not be deleted) */ export declare function isManagedRootDir(dirName: string): boolean; /** * Get the configure function for a platform */ export declare function configurePlatform(platformId: AITool, cwd: string): Promise; /** * Collect template files for a specific platform (for update tracking). * Returns undefined if the platform doesn't support template tracking. */ export declare function collectPlatformTemplates(platformId: AITool): Map | undefined; /** * Build TOOLS array for interactive init prompt, derived from AI_TOOLS registry */ export declare function getInitToolChoices(): { key: CliFlag; name: string; defaultChecked: boolean; platformId: AITool; }[]; /** * Resolve CLI flag name to AITool id (e.g., "claude" → "claude-code") */ export declare function resolveCliFlag(flag: string): AITool | undefined; //# sourceMappingURL=index.d.ts.map