pgit-cli
Version:
Private file tracking with dual git repositories
67 lines • 1.74 kB
TypeScript
import { CommandResult, CommandOptions } from '../types/config.types';
import { BaseError } from '../errors/base.error';
/**
* Cleanup command specific errors
*/
export declare class CleanupError extends BaseError {
readonly code = "CLEANUP_ERROR";
readonly recoverable = true;
}
export declare class NotInitializedError extends BaseError {
readonly code = "NOT_INITIALIZED";
readonly recoverable = false;
}
/**
* Cleanup result information
*/
export interface CleanupResult {
repairedSymlinks: number;
cleanedIndexEntries: number;
updatedGitignore: boolean;
configValidated: boolean;
issues: string[];
warnings: string[];
}
/**
* Cleanup command for system repair and maintenance
*/
export declare class CleanupCommand {
private readonly workingDir;
private readonly fileSystem;
private readonly configManager;
private readonly symlinkService;
constructor(workingDir?: string);
/**
* Execute the cleanup command
*/
execute(force?: boolean, options?: CommandOptions): Promise<CommandResult>;
/**
* Validate that the environment is ready for cleanup
*/
private validateEnvironment;
/**
* Validate and repair configuration
*/
private validateAndRepairConfig;
/**
* Repair broken symbolic links
*/
private repairSymbolicLinks;
/**
* Clean up git index issues
*/
private cleanupGitIndex;
/**
* Update .gitignore if needed
*/
private updateGitignoreIfNeeded;
/**
* Validate repositories
*/
private validateRepositories;
/**
* Display cleanup results
*/
private displayCleanupResults;
}
//# sourceMappingURL=cleanup.command.d.ts.map