/**
 * Declared capabilities a plugin exposes to Claude Code.
 * Each array contains the tool/resource/prompt/subagent names offered.
 */
export interface PluginCapabilities {
    /** MCP tool names provided (e.g. "create_spec", "validate"). */
    readonly tools: readonly string[];
    /** MCP resource URIs provided (e.g. "planu://specs/list"). */
    readonly resources: readonly string[];
    /** Prompt template names provided. */
    readonly prompts: readonly string[];
    /** Subagent names provided for orchestration. */
    readonly subagents: readonly string[];
}
/**
 * Host compatibility constraints.
 */
export interface PluginCompatibility {
    /** Minimum Claude Code version that can load this plugin (semver). */
    readonly minimumHostVersion: string;
    /** Specific Claude Code features required (e.g. "subagents", "file-editing"). */
    readonly requiredFeatures?: readonly string[];
}
/**
 * Root manifest schema for planu-plugin.json.
 * Follows MCP plugin conventions for the Claude Code marketplace.
 */
export interface ClaudeCodePluginManifest {
    /** Unique plugin identifier (reverse-DNS style). */
    readonly name: string;
    /** Human-readable display name shown in the marketplace. */
    readonly displayName: string;
    /** Short description for marketplace listing (max 160 chars). */
    readonly description: string;
    /** Version — must 1:1 track @planu/cli semver. */
    readonly version: string;
    /** Relative path to 256×256 SVG or PNG icon. */
    readonly icon: string;
    /** How to invoke the MCP server (npx command). */
    readonly command: readonly string[];
    /** Capabilities declared for Claude Code to discover. */
    readonly capabilities: PluginCapabilities;
    /** Host compatibility constraints. */
    readonly compatibility: PluginCompatibility;
    /** npm package name for auto-update. */
    readonly packageName: string;
    /** Source repository URL. */
    readonly repository: string;
    /** Author name or org. */
    readonly author: string;
    /** SPDX license identifier. */
    readonly license: string;
    /** Tags for marketplace search. */
    readonly keywords?: readonly string[];
    /** URL to plugin homepage or documentation. */
    readonly homepage?: string;
}
//# sourceMappingURL=plugin-manifest.d.ts.map