export interface FileSystemAdapter {
    readdir(dirPath: string): Promise<any[]>;
    stat(filePath: string): Promise<{
        isDirectory(): boolean;
    }>;
    access(filePath: string): Promise<void>;
    readFile(filePath: string, encoding: string): Promise<string>;
    writeFile(filePath: string, content: string): Promise<void>;
}
export declare class NodeFileSystemAdapter implements FileSystemAdapter {
    readdir(dirPath: string): Promise<any[]>;
    stat(filePath: string): Promise<{
        isDirectory(): boolean;
    }>;
    access(filePath: string): Promise<void>;
    readFile(filePath: string, encoding: string): Promise<string>;
    writeFile(filePath: string, content: string): Promise<void>;
}
export declare class InMemoryFileSystemAdapter implements FileSystemAdapter {
    private directories;
    private files;
    private dirStats;
    constructor();
    readdir(dirPath: string): Promise<any[]>;
    stat(filePath: string): Promise<{
        isDirectory(): boolean;
    }>;
    access(filePath: string): Promise<void>;
    readFile(filePath: string, encoding: string): Promise<string>;
    writeFile(filePath: string, content: string): Promise<void>;
    addDirectory(dirPath: string, entries: Array<{
        name: string;
        isDirectory: boolean;
    }>): void;
    addGitDirectory(dirPath: string): void;
    clear(): void;
}
//# sourceMappingURL=file-system-adapter.d.ts.map