woaru
Version:
Universal Project Setup Autopilot - Analyze and automatically configure development tools for ANY programming language
30 lines • 1.2 kB
TypeScript
import { SetupOptions } from '../types';
export declare abstract class BaseAction {
abstract name: string;
abstract description: string;
abstract canExecute(projectPath: string): Promise<boolean>;
abstract execute(projectPath: string, options: SetupOptions): Promise<boolean>;
abstract rollback(projectPath: string): Promise<boolean>;
protected runCommand(command: string, args: string[], cwd: string, options?: {
timeout?: number;
env?: Record<string, string>;
}): Promise<{
success: boolean;
output: string;
error?: string;
}>;
protected runCommandLegacy(command: string, cwd: string): Promise<{
success: boolean;
output: string;
}>;
private isValidCommand;
private sanitizeArgument;
private sanitizePath;
private parseCommand;
protected fileExists(filePath: string): Promise<boolean>;
protected readJsonFile<T = unknown>(filePath: string): Promise<T | null>;
protected writeJsonFile(filePath: string, data: unknown): Promise<void>;
protected createBackup(filePath: string): Promise<string>;
private cleanupOldBackups;
}
//# sourceMappingURL=BaseAction.d.ts.map