UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

104 lines 2.61 kB
/** * Progress Reporter for Orchestration Template CLI * Inspired by the cache-sync-enhanced progress reporting */ export interface ProgressUpdate { phase: string; current: number; total: number; message: string; percent: number; subPhase?: string; } export interface OperationResult { success: boolean; duration: number; message: string; errors?: string[]; warnings?: string[]; entityCount?: number; } /** * Base progress reporter with TTY-aware display */ export declare class ProgressReporter { private startTime; private phases; private currentPhase; protected isTTY: boolean; private lastLineCount; constructor(); /** * Start a new operation */ startOperation(operation: string): void; /** * Update progress for current phase */ updateProgress(update: ProgressUpdate): void; /** * Display progress bar for TTY environments */ private displayProgressBar; /** * Display progress text for non-TTY environments */ private displayProgressText; /** * Report an error */ error(error: Error | string): void; /** * Report a warning */ warning(message: string): void; /** * Complete the operation */ completeOperation(result: OperationResult): void; /** * Format duration in human-readable format */ protected formatDuration(ms: number): string; /** * Show a spinner for indeterminate progress */ showSpinner(message: string): () => void; } /** * Validation-specific progress reporter */ export declare class ValidationProgressReporter extends ProgressReporter { private validationErrors; private validationWarnings; /** * Report validation progress */ reportValidation(stepId: string, status: 'validating' | 'passed' | 'failed' | 'warning', message?: string): void; /** * Get validation summary */ getValidationSummary(): { errors: string[]; warnings: string[]; }; } /** * Execution-specific progress reporter */ export declare class ExecutionProgressReporter extends ProgressReporter { private executedSteps; /** * Report step execution */ reportStepExecution(stepId: string, entityType: string, status: 'starting' | 'completed' | 'failed', duration?: number): void; /** * Get execution summary */ getExecutionSummary(): { totalSteps: number; successfulSteps: number; totalDuration: number; }; } //# sourceMappingURL=ProgressReporter.d.ts.map