/** * plugins.ts — understand the plugins a project actually uses. * * RPG Maker MV configures plugins in js/plugins.js (an array of * {name, status, description, parameters}); each plugin file carries a `/*:` * annotation header declaring @plugindesc, @author, @param and (for MZ-ports) * @command, plus an @help block. This module fuses both so the MCP can adapt * generation to the project's own systems instead of emitting vanilla events. * * Roadmap #4 (Comprensión de plugins). */ export interface PluginParam { name: string; desc?: string; type?: string; default?: string; } export interface PluginInfo { name: string; status: boolean; description: string; author: string; /** Declared @param definitions from the plugin header. */ params: PluginParam[]; /** Configured parameter values from js/plugins.js. */ values: Record; /** Declared @command names (MZ-style; empty for classic MV plugins). */ commands: string[]; helpExcerpt: string; /** True when js/plugins.js lists it but js/plugins/.js is missing. */ fileMissing: boolean; } export interface PluginReport { source: "js/plugins.js" | "System.json" | "none"; total: number; enabled: number; plugins: PluginInfo[]; } /** Build a fused report of every plugin the project configures. */ export declare function analyzePlugins(projectPath: string): Promise;