/**
 * Notification Command Integration
 *
 * Helper for injecting notification summaries into command output.
 * Used by SpecWeave commands like /progress, /status, /done to show
 * pending notifications after their main output.
 *
 * @module core/notifications/command-integration
 */
import { Notification } from './notification-types.js';
import { Logger } from '../../utils/logger.js';
/**
 * Options for command notification display
 */
export interface CommandNotificationOptions {
    /**
     * Path to .specweave directory
     */
    specweavePath?: string;
    /**
     * Logger instance
     */
    logger?: Logger;
    /**
     * Display style
     * @default 'summary'
     */
    style?: 'compact' | 'summary' | 'box';
    /**
     * Minimum severity to show
     * If 'critical', only show if critical notifications exist
     */
    minSeverity?: 'info' | 'warning' | 'critical';
}
/**
 * Result of notification check
 */
export interface NotificationCheckResult {
    /**
     * Number of pending notifications
     */
    count: number;
    /**
     * Whether any critical notifications exist
     */
    hasCritical: boolean;
    /**
     * Whether any warning notifications exist
     */
    hasWarning: boolean;
    /**
     * Formatted output string (empty if no notifications to show)
     */
    output: string;
    /**
     * The pending notifications
     */
    notifications: Notification[];
}
/**
 * Check for pending notifications and format for command output
 *
 * @param options - Configuration options
 * @returns Check result with formatted output
 */
export declare function checkAndFormatNotifications(options?: CommandNotificationOptions): Promise<NotificationCheckResult>;
/**
 * Print notification summary to console if there are pending notifications
 *
 * @param options - Configuration options
 * @returns true if notifications were printed
 */
export declare function printNotificationSummary(options?: CommandNotificationOptions): Promise<boolean>;
/**
 * Wrapper to add notification summary to a command function
 *
 * @param commandFn - The command function to wrap
 * @param options - Notification display options
 * @returns Wrapped function that shows notifications after command
 */
export declare function withNotifications<T extends (...args: unknown[]) => Promise<void>>(commandFn: T, options?: CommandNotificationOptions): T;
//# sourceMappingURL=command-integration.d.ts.map