UNPKG

@bramato/openrouter-mock-generator

Version:

AI-powered mock data generator using OpenRouter API with JSON mode support

118 lines 3.36 kB
/** * Servizio coordinatore per il post-processing delle immagini nei dati mock */ import { type ExtractionResult } from './image-url-extractor'; import { type DescriptionOptions } from './description-generator'; import { type OptimizationResult } from './image-processing-analyzer'; import { type ReplacementResult, type ReplacementOptions } from './url-replacer'; export interface PostProcessingOptions { enableImageReplacement?: boolean; enableOptimization?: boolean; maxConcurrentGenerations?: number; descriptionOptions?: DescriptionOptions; uploadToCloud?: boolean; onImageProgress?: (current: number, total: number, status?: string) => void; onUploadProgress?: (current: number, total: number, status?: string) => void; customDescriptions?: Map<string, any[]>; storageProvider?: 'aws' | 'digitalocean'; replacementOptions?: ReplacementOptions; verbose?: boolean; saveIntermediateResults?: boolean; logFile?: string; } export interface PostProcessingResult { success: boolean; originalImageCount: number; processedImageCount: number; generatedImageCount: number; optimizationSavings: number; processingTimeMs: number; extraction: ExtractionResult; optimization: OptimizationResult; replacement: ReplacementResult; processedData: any; errors: string[]; warnings: string[]; } export interface ProcessingStats { phase: string; startTime: number; endTime?: number; itemsProcessed: number; errors: number; details?: any; } export declare class PostProcessingOrchestrator { private imageGenerator; private stats; private pathToUrlMap; private options; constructor(huggingfaceApiKey?: string, options?: PostProcessingOptions); /** * Esegue il post-processing completo dei dati mock */ processData(data: any): Promise<PostProcessingResult>; /** * Fase 1: Estrazione URL immagini Picsum */ private extractImageUrls; /** * Fase 2: Generazione descrizioni contestuali */ private generateDescriptions; /** * Fase 3: Analisi e ottimizzazione processing */ private optimizeProcessing; /** * Fase 4: Generazione immagini AI */ private generateImages; /** * Fase 5: Sostituzione URL nei dati */ private replaceUrls; /** * Processa un singolo gruppo di immagini */ private processGroup; /** * Recupera l'URL originale Picsum dal path interno */ private getOriginalUrlFromPath; /** * Verifica se è disponibile una configurazione cloud storage */ private hasCloudStorageConfigured; /** * Crea piano base senza ottimizzazioni */ private createBasicPlan; /** * Crea batch per elaborazione concorrente */ private createBatches; /** * Gestione fasi di processing */ private startPhase; private endPhase; /** * Logging */ private log; private logFinalStats; /** * Normalizza opzioni con valori di default */ private normalizeOptions; /** * Ottieni statistiche complete del processing */ getProcessingStats(): ProcessingStats[]; /** * Reset statistiche */ resetStats(): void; } //# sourceMappingURL=post-processing-orchestrator.d.ts.map