/**
 * Plugin Installation Detector
 *
 * Detects when plugins are installed during a Claude Code session
 * by analyzing hook output for installation success messages.
 *
 * This module is part of the session restart warning feature that
 * notifies users when plugins are installed but not yet loaded.
 *
 * @module core/session/plugin-install-detector
 */
/**
 * Trigger types for plugin installation events
 */
export type PluginInstallTrigger = 'specweave-init' | 'claude-plugin-install' | 'manual';
/**
 * Event data for a plugin installation
 */
export interface PluginInstallEvent {
    /** ISO-8601 timestamp when installation was detected */
    timestamp: string;
    /** List of plugin names that were installed */
    plugins: string[];
    /** What triggered the installation */
    trigger: PluginInstallTrigger;
    /** Project path where plugins were installed (if known) */
    projectPath?: string;
}
/**
 * Result of plugin installation detection
 */
export interface DetectionResult {
    /** Whether plugin installation was detected */
    detected: boolean;
    /** Installation event details (only present if detected is true) */
    event?: PluginInstallEvent;
}
/**
 * Detect plugin installation from hook output
 *
 * Analyzes the output from hooks or CLI commands to detect if plugins
 * were installed during the current session.
 *
 * @param hookOutput - Raw output from hook execution or CLI command
 * @returns Detection result with event details if plugins were installed
 *
 * @example
 * ```typescript
 * const result = detectPluginInstallation('✔ sw installed');
 * if (result.detected) {
 *   console.log('Plugins installed:', result.event.plugins);
 * }
 * ```
 */
export declare function detectPluginInstallation(hookOutput: string): DetectionResult;
/**
 * Parse installed plugin names from output text
 *
 * Extracts unique plugin names from various success message formats.
 * Handles multiple checkmark styles and message formats.
 *
 * @param output - Raw output text to parse
 * @returns Array of unique plugin names found
 *
 * @example
 * ```typescript
 * const plugins = parseInstalledPlugins('✔ sw installed\n✔ frontend installed');
 * // Returns: ['sw', 'frontend']
 * ```
 */
export declare function parseInstalledPlugins(output: string): string[];
//# sourceMappingURL=plugin-install-detector.d.ts.map