import { n as FileStoreSync, t as FileStore } from "./file-store-C1gBTnpN.js";

//#region packages/fs-safe/dist/private-temp-workspace.d.ts
type TempWorkspaceOptions$1 = {
  rootDir: string;
  prefix: string;
  dirMode?: number;
  mode?: number;
};
type TempWorkspace$1 = {
  dir: string;
  store: FileStore;
  path(fileName: string): string;
  write(fileName: string, data: string | Uint8Array): Promise<string>;
  writeText(fileName: string, data: string): Promise<string>;
  writeJson(fileName: string, data: unknown, options?: {
    trailingNewline?: boolean;
  }): Promise<string>;
  copyIn(fileName: string, sourcePath: string): Promise<string>;
  read(fileName: string): Promise<Buffer>;
  cleanup(): Promise<void>;
  [Symbol.asyncDispose](): Promise<void>;
};
type TempWorkspaceSync$1 = {
  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;
};
//#endregion
//#region src/infra/private-temp-workspace.d.ts
declare function tempWorkspace(...args: any[]): any;
declare function tempWorkspaceSync(...args: any[]): any;
declare function withTempWorkspace(...args: any[]): any;
declare function withTempWorkspaceSync(...args: any[]): any;
type TempWorkspace = TempWorkspace$1;
type TempWorkspaceOptions = TempWorkspaceOptions$1;
type TempWorkspaceSync = TempWorkspaceSync$1;
//#endregion
export { tempWorkspaceSync as a, tempWorkspace as i, TempWorkspaceOptions as n, withTempWorkspace as o, TempWorkspaceSync as r, withTempWorkspaceSync as s, TempWorkspace as t };