import { type FileStore, type FileStoreSync } from "./file-store.js"; export type TempWorkspaceOptions = { rootDir: string; prefix: string; dirMode?: number; mode?: number; }; export type TempWorkspace = { dir: string; store: FileStore; path(fileName: string): string; write(fileName: string, data: string | Uint8Array): Promise; writeText(fileName: string, data: string): Promise; writeJson(fileName: string, data: unknown, options?: { trailingNewline?: boolean; }): Promise; copyIn(fileName: string, sourcePath: string): Promise; read(fileName: string): Promise; cleanup(): Promise; [Symbol.asyncDispose](): Promise; }; export type TempWorkspaceSync = { dir: string; store: FileStoreSync; path(fileName: string): string; write(fileName: string, data: string | Uint8Array): string; writeText(fileName: string, data: string): string; writeJson(fileName: string, data: unknown, options?: { trailingNewline?: boolean; }): string; read(fileName: string): Buffer; cleanup(): void; [Symbol.dispose](): void; }; export declare function tempWorkspace(options: TempWorkspaceOptions): Promise; export declare function withTempWorkspace(options: TempWorkspaceOptions, run: (workspace: TempWorkspace) => Promise): Promise; export declare function tempWorkspaceSync(options: TempWorkspaceOptions): TempWorkspaceSync; export declare function withTempWorkspaceSync(options: TempWorkspaceOptions, run: (workspace: TempWorkspaceSync) => T): T; //# sourceMappingURL=private-temp-workspace.d.ts.map