claudekit
Version:
CLI tools for Claude Code development workflow
77 lines • 2.52 kB
TypeScript
export interface ProgressOptions {
quiet?: boolean | undefined;
verbose?: boolean | undefined;
suppressSpinners?: boolean | undefined;
}
export interface ProgressStep {
id: string;
name: string;
description: string;
total?: number;
completed?: number;
}
export interface ProgressState {
phase: 'planning' | 'discovering' | 'validating' | 'installing' | 'configuring' | 'complete' | 'failed';
currentStep?: ProgressStep;
totalSteps: number;
completedSteps: number;
message: string;
warnings: string[];
errors: string[];
}
export declare class ProgressReporter {
private spinner;
private options;
private state;
private startTime;
constructor(options?: ProgressOptions);
start(message: string): void;
update(message: string): void;
updateProgress(state: Partial<ProgressState>): void;
step(step: ProgressStep, progress?: {
current: number;
total: number;
}): void;
succeed(message?: string): void;
fail(message?: string): void;
warn(message: string): void;
error(message: string): void;
info(message: string): void;
stop(): void;
clear(): void;
getState(): ProgressState;
getElapsedTime(): number;
private formatProgressMessage;
private formatCompletionMessage;
}
export declare function createProgressReporter(options?: ProgressOptions): ProgressReporter;
export declare class FileProgressReporter {
private reporter;
private files;
constructor(options?: ProgressOptions);
initialize(files: string[]): void;
fileProgress(filePath: string, status: 'started' | 'completed' | 'failed', details?: string): void;
complete(): void;
fail(message: string): void;
}
export declare class ComponentProgressReporter {
private reporter;
private components;
private currentIndex;
constructor(options?: ProgressOptions);
initialize(componentNames: string[]): void;
componentProgress(componentName: string, status: 'discovering' | 'installing' | 'completed' | 'failed'): void;
complete(additionalItems?: {
agentCount?: number;
}): void;
fail(message: string): void;
stop(): void;
}
export declare const progress: {
withSpinner<T>(message: string, operation: () => Promise<T>, options?: ProgressOptions): Promise<T>;
withSteps<T>(steps: Array<{
name: string;
operation: () => Promise<T>;
}>, options?: ProgressOptions): Promise<T[]>;
};
//# sourceMappingURL=progress.d.ts.map