import { DirectoryEntry } from './DirectoryEntry.js';
import { Workspace } from './Workspace.js';
export declare class SubWorkspace implements Workspace {
    readonly subpath: string;
    readonly workspace: Workspace;
    constructor(subpath: string, workspace: Workspace);
    writeFile(subpath: string, data: string): Promise<void>;
    readFile(subpath: string): Promise<string>;
    exists(subpath: string): Promise<boolean>;
    rename(oldPath: string, newPath: string): Promise<void>;
    mkdir(subpath: string, opts?: {
        recursive: boolean;
    }): Promise<void>;
    rmdir(subpath: string, opts: {
        recursive: boolean;
    }): Promise<void>;
    readdir(subpath: string): Promise<DirectoryEntry[]>;
    appendFile(subpath: string, data: string): Promise<void>;
    rm(subpath: string): Promise<void>;
    exec(command: string, args?: string[]): Promise<{
        exitCode: number;
        stdout: string;
        stderr: string;
    }>;
    private toSubpath;
    writeFileSync(subpath: string, data: string): void;
    readFileSync(subpath: string): string;
}
