UNPKG

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

219 lines 9.28 kB
import { ComplianceValidationService } from '../../services/ComplianceValidationService.js'; import { AIProcessor } from '../ai/AIProcessor.js'; import { ConfigurationManager } from '../ai/ConfigurationManager.js'; import { GenerationOptions, GenerationResult, ValidationResult } from './types'; export type { GenerationResult }; export type { GenerationOptions }; import { ProjectContext } from '../ai/types'; /** * Class responsible for generating project documentation */ export declare class DocumentGenerator { private options; private context; private results; private aiProcessor; private configManager; protected complianceService: ComplianceValidationService; constructor(context: string, options?: Partial<GenerationOptions>, aiProcessor?: AIProcessor, configManager?: ConfigurationManager); /** * Generate Data Governance Framework document * @param context Project context */ generateDataGovernanceFramework(context: ProjectContext): Promise<boolean>; /** * Generate Data Governance Plan document * @param context Project context */ generateDataGovernancePlan(context: ProjectContext): Promise<boolean>; /** * Save document output to file * @param output Document output to save * @param fileName Optional custom file name (without extension) */ private saveDocumentOutput; /** * Generate Data Lifecycle Management document * @param context Project context */ generateDataLifecycleManagement(context: ProjectContext): Promise<boolean>; /** * Generate Master Data Management Strategy document * @param context Project context */ generateMasterDataManagementStrategy(context: ProjectContext): Promise<boolean>; getAiUserStories(context: string): Promise<string>; getAiUserPersonas(context: string): Promise<string>; getAiKeyRolesAndNeeds(context: string): Promise<string>; getAiProjectCharter(context: string): Promise<string>; getAiProjectStatementOfWork(context: string): Promise<string>; getAiBusinessCase(context: string): Promise<string>; getAiMissionVisionAndCoreValues(context: string): Promise<string>; getAiProjectPurpose(context: string): Promise<string>; getAiProjectManagementPlan(context: string): Promise<string>; getAiDirectAndManageProjectWorkProcess(context: string): Promise<string>; getAiPerformIntegratedChangeControlProcess(context: string): Promise<string>; getAiDmbokDataManagementStrategy(context: string): Promise<string>; getAiCloseProjectOrPhaseProcess(context: string): Promise<string>; getAiPlanScopeManagement(context: string): Promise<string>; getAiRequirementsManagementPlan(context: string): Promise<string>; getAiCollectRequirementsProcess(context: string): Promise<string>; getAiRequirementsDocumentation(context: string): Promise<string>; getAiRequirementsTraceabilityMatrix(context: string): Promise<string>; getAiDefineScopeProcess(context: string): Promise<string>; getAiProjectScopeStatement(context: string): Promise<string>; getAiCreateWbsProcess(context: string): Promise<string>; getAiScopeBaseline(context: string): Promise<string>; getAiValidateScopeProcess(context: string): Promise<string>; getAiControlScopeProcess(context: string): Promise<string>; getAiWorkPerformanceInformationScope(context: string): Promise<string>; getAiScopeManagementPlan(context: string): Promise<string>; getAiRiskManagementPlan(context: string): Promise<string>; getAiCostManagementPlan(context: string): Promise<string>; getAiQualityManagementPlan(context: string): Promise<string>; getAiResourceManagementPlan(context: string): Promise<string>; getAiCommunicationManagementPlan(context: string): Promise<string>; getAiProcurementManagementPlan(context: string): Promise<string>; getAiStakeholderEngagementPlan(context: string): Promise<string>; getAiStakeholderRegister(context: string): Promise<string>; getAiStakeholderAnalysis(context: string): Promise<string>; getAiWbs(context: string): Promise<string>; getAiWbsDictionary(context: string): Promise<string>; getAiActivityList(context: string): Promise<string>; getAiActivityDurationEstimates(context: string): Promise<string>; getAiActivityResourceEstimates(context: string): Promise<string>; getAiScheduleNetworkDiagram(context: string): Promise<string>; getAiMilestoneList(context: string): Promise<string>; getAiDevelopScheduleInput(context: string): Promise<string>; getAiDataModelSuggestions(context: string): Promise<string>; getAiTechStackAnalysis(context: string): Promise<string>; getAiRiskAnalysis(context: string): Promise<string>; getAiAcceptanceCriteria(context: string): Promise<string>; getAiComplianceConsiderations(context: string): Promise<string>; getAiUiUxConsiderations(context: string): Promise<string>; getProjectKickoffPreparationsChecklist(context: string): Promise<string>; /** * Filter and sort tasks based on options and dependencies */ private filterTasks; /** * Generate a single document * @param task Task to generate document for * @returns Whether generation was successful */ private generateSingleDocument; /** * Save compliance report for a document * @param documentKey Document key * @param validation Compliance validation result */ private saveComplianceReport; /** * Generate compliance report content * @param validation Compliance validation result * @returns Formatted compliance report content */ private generateComplianceReportContent; /** * Wait for a specified amount of time * @param ms Milliseconds to wait */ private delay; /** * Generate all documents based on options * @returns Generation result */ generateAll(): Promise<GenerationResult>; /** * Generate a single document by key * @param documentKey The key of the document to generate (e.g., 'summary', 'user-stories', 'project-charter') * @returns Whether generation was successful */ generateOne(documentKey: string): Promise<boolean>; /** * Print generation summary */ private printSummary; /** * Validate that all expected documents exist * @returns Validation result */ validateGeneration(): Promise<ValidationResult>; /** * Generate a markdown file * @param outputDir Output directory * @param fileName File name * @param title Document title * @param content Document content */ static generateMarkdownFile(outputDir: string, fileName: string, title: string, content: string): Promise<void>; /** * Generate core documents only * @param context Project context * @returns Generation result */ static generateCoreDocuments(context: string): Promise<GenerationResult>; /** * Generate management plans only * @param context Project context * @returns Generation result */ static generateManagementPlans(context: string): Promise<GenerationResult>; /** * Generate planning artifacts only * @param context Project context * @returns Generation result */ static generatePlanningArtifacts(context: string): Promise<GenerationResult>; /** * Generate technical analysis including technical design documents * @param context Project context * @returns Generation result */ static generateTechnicalAnalysis(context: string): Promise<GenerationResult>; /** * Generate stakeholder documents only * @param context Project context * @returns Generation result */ static generateStakeholderDocuments(context: string): Promise<GenerationResult>; /** * Validate PMBOK compliance across documents using the real PMBOKValidator * @returns Comprehensive compliance validation result */ validatePMBOKCompliance(): Promise<{ compliance: boolean; consistencyScore: number; documentQuality: Record<string, any>; validationResult?: any; }>; /** * Determine overall compliance based on comprehensive validation results * @param validationResult Full validation result from PMBOKValidator * @returns Whether the documents meet compliance standards */ private determineOverallCompliance; /** * Generate all documents and validate PMBOK compliance * @param context Project context * @returns Generation and compliance result */ static generateAllWithPMBOKValidation(context: string): Promise<{ result: GenerationResult; compliance: { score: number; details: string[]; isCompliant: boolean; qualityReport: any; actionableInsights: string[]; improvementRecommendations: string[]; }; }>; /** * Generate a comprehensive quality assessment report in markdown format */ private static generateQualityReport; } /** * Version information */ export declare const documentGeneratorVersion = "2.1.3"; //# sourceMappingURL=DocumentGenerator.d.ts.map