ailock
Version:
AI-Proof File Guard - Protect sensitive files from accidental AI modifications
55 lines • 1.47 kB
TypeScript
export interface FilePermissionInfo {
mode: number;
octal: string;
readable: boolean;
writable: boolean;
executable: boolean;
owner: string;
group: string;
size: number;
lastModified: Date;
}
export interface FileFlagInfo {
platform: string;
hasImmutableFlag?: boolean;
hasSystemFlag?: boolean;
chflagsOutput?: string;
chattrOutput?: string;
error?: string;
}
export interface UnlockDiagnostics {
filePath: string;
permissions: FilePermissionInfo;
flags: FileFlagInfo;
atomicLockExists: boolean;
diagnosis: string[];
recommendations: string[];
}
/**
* File diagnostics utility for troubleshooting unlock issues
*/
export declare class FileDiagnostics {
private commandExecutor;
constructor();
/**
* Get comprehensive file permission information
*/
getFilePermissions(filePath: string): Promise<FilePermissionInfo>;
/**
* Check file flags and extended attributes
*/
getFileFlags(filePath: string): Promise<FileFlagInfo>;
/**
* Check if atomic lock file exists
*/
checkAtomicLock(filePath: string): Promise<boolean>;
/**
* Perform comprehensive diagnostics for unlock issues
*/
diagnoseUnlockIssues(filePath: string): Promise<UnlockDiagnostics>;
/**
* Format diagnostics for display
*/
formatDiagnostics(diagnostics: UnlockDiagnostics): string;
}
//# sourceMappingURL=FileDiagnostics.d.ts.map