export interface PluginParamDef { name: string; type?: string; desc?: string; default?: string | number | boolean; } export interface CreatePluginParams { name: string; description?: string; author?: string; help?: string; params?: PluginParamDef[]; commands?: string[]; body?: string; status?: boolean; } /** * Create (or overwrite) a plugin file and register it in js/plugins.js. * The plugin name must be a bare filename token (letters/digits/_/-), never a * path — this is enforced and further guarded by resolveSafePath. */ export declare function createPlugin(projectPath: string, params: CreatePluginParams): Promise<{ name: string; file: string; registered: boolean; enabled: boolean | undefined; pluginCount: number; replaced: boolean; }>;