adpa-enterprise-framework-automation
Version:
Modular, standards-compliant Node.js/TypeScript automation framework for enterprise requirements, project, and data management. Provides CLI and API for BABOK v3, PMBOK 7th Edition, and DMBOK 2.0 (in progress). Production-ready Express.js API with TypeSpe
243 lines • 5.3 kB
TypeScript
/**
* Interactive CLI Menu System
*
* Provides a Yeoman-style interactive CLI interface for the ADPA system.
* This is the main entry point for the interactive menu functionality.
*
* @version 1.0.0
* @author ADPA Team
*/
import { EventEmitter } from 'events';
export interface MenuItem {
key: string;
label: string;
icon: string;
description?: string;
enabled: boolean;
badge?: string;
action: MenuAction;
}
export interface MenuAction {
type: 'navigate' | 'function' | 'command';
target?: string;
handler?: string;
command?: string;
args?: string[];
}
export interface MenuConfig {
id: string;
title: string;
items: MenuItem[];
showBreadcrumb: boolean;
showStatusBar: boolean;
parent?: string;
}
export interface MenuResult {
action: 'continue' | 'back' | 'home' | 'exit';
data?: any;
}
export interface SystemStatus {
aiProviderConfigured: boolean;
projectInitialized: boolean;
integrationsConfigured: boolean;
documentsGenerated: number;
lastActivity?: Date;
}
/**
* Main Interactive Menu System Class
*/
export declare class InteractiveMenuSystem extends EventEmitter {
private rl;
private navigationStack;
private currentMenu?;
private menus;
private systemStatus;
private commandIntegration;
private promptService;
constructor();
/**
* Start the interactive menu system
*/
start(): Promise<void>;
/**
* Stop the interactive menu system
*/
stop(): Promise<void>;
/**
* Navigate to a specific menu
*/
navigateTo(menuId: string, params?: any): Promise<void>;
/**
* Go back to previous menu
*/
goBack(): Promise<void>;
/**
* Go to main menu
*/
goHome(): Promise<void>;
/**
* Render a menu to the console
*/
private renderMenu;
/**
* Handle user input for a menu
*/
private handleMenuInput;
/**
* Execute a menu action with enhanced error handling
*/
private executeMenuActionWithErrorHandling;
/**
* Execute a menu action (legacy method for backward compatibility)
*/
private executeMenuAction;
/**
* Execute a function handler with error handling
*/
private executeFunctionWithErrorHandling;
/**
* Execute a function handler
*/
private executeFunction;
/**
* Execute a CLI command with error handling
*/
private executeCommandWithErrorHandling;
/**
* Execute a CLI command using the integrated command service
*/
private executeCommand;
/**
* Initialize all menu configurations
*/
private initializeMenus;
/**
* Render menu header
*/
private renderMenuHeader;
/**
* Render a menu item
*/
private renderMenuItem;
/**
* Render menu footer
*/
private renderMenuFooter;
/**
* Render breadcrumb navigation
*/
private renderBreadcrumb;
/**
* Render status bar
*/
private renderStatusBar;
/**
* Clear the console screen
*/
private clearScreen;
/**
* Prompt user for input
*/
private promptForChoice;
/**
* Pause execution and wait for user input
*/
private pause;
/**
* Load system status
*/
private loadSystemStatus;
/**
* Get provider status badge
*/
private getProviderStatusBadge;
/**
* Search templates function
*/
private searchTemplates;
/**
* Show system status
*/
private showSystemStatus;
/**
* Setup environment
*/
private setupEnvironment;
/**
* Show navigation help
*/
private showNavigationHelp;
/**
* Show recent documents
*/
private showRecentDocuments;
/**
* Show AI provider status
*/
private showProviderStatus;
/**
* Show integration status
*/
private showIntegrationStatus;
/**
* Show performance insights
*/
private showPerformanceInsights;
/**
* Manage templates
*/
private manageTemplates;
/**
* Configure output settings
*/
private configureOutput;
/**
* Run system diagnostics
*/
private runDiagnostics;
/**
* Show getting started guide
*/
private showGettingStarted;
/**
* Show command reference
*/
private showCommandReference;
/**
* Show template guide
*/
private showTemplateGuide;
/**
* Show troubleshooting guide
*/
private showTroubleshooting;
/**
* Show about information
*/
private showAbout;
/**
* Interactive template selection
*/
private interactiveTemplateSelection;
/**
* Batch generation
*/
private batchGeneration;
/**
* Custom context generation
*/
private customContextGeneration;
/**
* Configure Adobe integration
*/
private configureAdobe;
/**
* Custom risk assessment with interactive setup
*/
private customRiskAssessment;
}
/**
* Factory function to create and start the interactive menu
*/
export declare function startInteractiveMenu(): Promise<void>;
//# sourceMappingURL=InteractiveMenuSystem.d.ts.map