import { copy, exists, makeTempDir, makeTempFile, mkdirs, move, readFile, readTextFile, writeFile, writeTextFile, type CopyOptions, type MakeTempOptions, type WriteFileOptions, } from "avril:fs"; import { copy as copySync, exists as existsSync, makeTempDir as makeTempDirSync, makeTempFile as makeTempFileSync, mkdirs as mkdirsSync, move as moveSync, readFile as readFileSync, readTextFile as readTextFileSync, writeFile as writeFileSync, writeTextFile as writeTextFileSync, } from "avril:fs/sync"; const data: Promise = readFile("data"); const text: Promise = readTextFile(new URL("file:///data")); const written: Promise = writeFile("out", new Uint8Array(), { create: true }); const writtenText: Promise = writeTextFile("out", "hi", { mode: 0o644 }); const made: Promise = mkdirs("dir", { mode: 0o755 }); const dir: Promise = makeTempDir({ prefix: "a" }); const file: Promise = makeTempFile({ suffix: "b" }); const copied: Promise = copy("a", "b", { dereference: true }); const moved: Promise = move("a", "b"); const present: Promise = exists("a"); const options: CopyOptions = { dereference: false }; const tempOptions: MakeTempOptions = { dir: "tmp", prefix: "a", suffix: "b" }; const writeOptions: WriteFileOptions = { append: true, create: true, createNew: false, mode: 0o600 }; // @ts-expect-error writeFile requires a Uint8Array. writeFile("out", "nope"); // @ts-expect-error paths are strings or URLs. readFile(42); const syncData: Uint8Array = readFileSync("data"); const syncText: string = readTextFileSync("data"); const syncWritten: void = writeFileSync("out", new Uint8Array()); const syncWrittenText: void = writeTextFileSync("out", "hi"); const syncMade: void = mkdirsSync("dir"); const syncDir: string = makeTempDirSync(); const syncFile: string = makeTempFileSync(); const syncCopied: void = copySync("a", "b"); const syncMoved: void = moveSync("a", "b"); const syncPresent: boolean = existsSync("a"); // @ts-expect-error sync paths are strings or URLs. readFileSync(42); void data; void text; void written; void writtenText; void made; void dir; void file; void copied; void moved; void present; void options; void tempOptions; void writeOptions; void syncData; void syncText; void syncWritten; void syncWrittenText; void syncMade; void syncDir; void syncFile; void syncCopied; void syncMoved; void syncPresent;