import { BaseMetadata, TaskMetadata, EpicMetadata, ProjectMetadata, MetadataChange, MetadataValue, EntityLifecycle } from '../types/metadata-types.js'; import { AtomicTask, Epic, Project } from '../types/task.js'; import { OpenRouterConfig } from '../../../types/workflow.js'; export interface MetadataEnrichmentOptions { useAI?: boolean; analyzeComplexity?: boolean; estimatePerformance?: boolean; assessQuality?: boolean; enhanceTags?: boolean; updateExisting?: boolean; } export interface MetadataValidationResult { isValid: boolean; errors: MetadataValidationError[]; warnings: MetadataValidationWarning[]; suggestions: MetadataImprovement[]; } export interface MetadataValidationError { field: string; message: string; severity: 'error' | 'critical'; suggestedFix?: string; } export interface MetadataValidationWarning { field: string; message: string; impact: 'low' | 'medium' | 'high'; } export interface MetadataImprovement { field: string; description: string; suggestedValue?: MetadataValue; benefit: string; } export interface MetadataSearchFilters { entityType?: 'task' | 'epic' | 'project'; entityIds?: string[]; lifecycles?: EntityLifecycle[]; createdBy?: string[]; dateRange?: { start: Date; end: Date; }; attributes?: Record; minVersion?: number; tags?: string[]; } export interface MetadataAnalytics { totalEntities: number; completeness: { average: number; byEntityType: Record; byLifecycle: Record; }; changeFrequency: { daily: number; weekly: number; monthly: number; }; activeUsers: { user: string; changes: number; percentage: number; }[]; commonAttributes: { attribute: string; usage: number; percentage: number; }[]; quality: { average: number; distribution: Record; trends: { improving: number; stable: number; declining: number; }; }; } export declare class MetadataService { private static instance; private config; private tagService; private metadataCache; private changeHistory; private constructor(); static getInstance(config: OpenRouterConfig): MetadataService; createTaskMetadata(task: AtomicTask, options?: MetadataEnrichmentOptions): Promise; createEpicMetadata(epic: Epic, options?: MetadataEnrichmentOptions): Promise; createProjectMetadata(project: Project, options?: MetadataEnrichmentOptions): Promise; updateMetadata(entityId: string, updates: Partial, updatedBy: string, reason?: string): Promise; validateMetadata(metadata: BaseMetadata): Promise; getMetadataAnalytics(filters?: MetadataSearchFilters): Promise; searchMetadata(filters: MetadataSearchFilters): Promise; getChangeHistory(entityId: string): MetadataChange[]; private createBaseMetadata; private createTagCollection; private analyzeComplexity; private estimatePerformance; private assessQuality; private createCollaborationMetadata; private createIntegrationMetadata; private recordChange; private calculateTechnicalComplexity; private calculateBusinessComplexity; private calculateIntegrationComplexity; private identifyComplexityFactors; private calculateEfficiency; private calculateResourceUtilization; private calculateScalability; private createQualityGates; private applyFilters; private calculateAverageCompleteness; private calculateCompletenessByType; private calculateCompletenessByLifecycle; private calculateChangeFrequency; private calculateActiveUsers; private calculateCommonAttributes; private calculateQualityMetrics; private enrichTaskMetadataWithAI; private enrichEpicMetadataWithAI; private enrichProjectMetadataWithAI; private createScopeMetadata; private createProgressMetadata; private createResourceMetadata; private createProjectClassification; private createBusinessMetadata; private createTechnicalMetadata; private createGovernanceMetadata; cleanup(): Promise; } //# sourceMappingURL=metadata-service.d.ts.map