export interface FileSystemAdapter {
    writeFile(path: string, content: string, encoding: string): Promise<void>;
    readFile(path: string, encoding: string): Promise<string>;
    mkdir(path: string, options?: {
        recursive?: boolean;
    }): Promise<void>;
    access(path: string): Promise<void>;
    readdir(path: string): Promise<string[]>;
}
export declare class NodeFileSystemAdapter implements FileSystemAdapter {
    private fs;
    writeFile(path: string, content: string, encoding: string): Promise<void>;
    readFile(path: string, encoding: string): Promise<string>;
    mkdir(path: string, options?: {
        recursive?: boolean;
    }): Promise<void>;
    access(path: string): Promise<void>;
    readdir(path: string): Promise<string[]>;
}
export declare class InMemoryFileSystemAdapter implements FileSystemAdapter {
    private files;
    private directories;
    writeFile(path: string, content: string, encoding: string): Promise<void>;
    readFile(path: string, encoding: string): Promise<string>;
    mkdir(path: string, options?: {
        recursive?: boolean;
    }): Promise<void>;
    access(path: string): Promise<void>;
    readdir(path: string): Promise<string[]>;
    clear(): void;
    hasFile(path: string): boolean;
    hasDirectory(path: string): boolean;
    getFileContent(path: string): string | undefined;
}
//# sourceMappingURL=file-system-adapter.d.ts.map