/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
import fs from "node:fs/promises";
import { MaybePromise } from "./types";
export declare const useFs: () => {
    outputFile: typeof import("fs-extra").outputFile;
    emptyDir: typeof import("fs-extra").emptyDir;
    ensureDir: typeof import("fs-extra").ensureDir;
    copy: typeof import("fs-extra").copy;
    pathExists: typeof import("fs-extra").pathExists;
    readJson: <T>(path: string) => Promise<T>;
    modifyJson: <T_1, V = T_1>(path: string, modify: (input?: T_1 | undefined) => MaybePromise<V | undefined>) => Promise<void>;
    tryReadJson: <T_2>(path: string) => Promise<T_2 | undefined>;
    listFiles: (dir?: string) => Promise<string[]>;
    isFile: (path: string) => Promise<boolean>;
    isDirectory: (path: string) => Promise<boolean>;
    access(path: import("fs").PathLike, mode?: number | undefined): Promise<void>;
    access(path: import("fs").PathLike, mode?: number | undefined): Promise<void>;
    copyFile(src: import("fs").PathLike, dest: import("fs").PathLike, mode?: number | undefined): Promise<void>;
    copyFile(src: import("fs").PathLike, dest: import("fs").PathLike, mode?: number | undefined): Promise<void>;
    open(path: import("fs").PathLike, flags?: string | number | undefined, mode?: import("fs").Mode | undefined): Promise<fs.FileHandle>;
    open(path: import("fs").PathLike, flags?: string | number | undefined, mode?: import("fs").Mode | undefined): Promise<fs.FileHandle>;
    rename(oldPath: import("fs").PathLike, newPath: import("fs").PathLike): Promise<void>;
    rename(oldPath: import("fs").PathLike, newPath: import("fs").PathLike): Promise<void>;
    truncate(path: import("fs").PathLike, len?: number | undefined): Promise<void>;
    truncate(path: import("fs").PathLike, len?: number | undefined): Promise<void>;
    rmdir(path: import("fs").PathLike, options?: import("fs").RmDirOptions | undefined): Promise<void>;
    rmdir(path: import("fs").PathLike, options?: import("fs").RmDirOptions | undefined): Promise<void>;
    rm(path: import("fs").PathLike, options?: import("fs").RmOptions | undefined): Promise<void>;
    rm(path: import("fs").PathLike, options?: import("fs").RmOptions | undefined): Promise<void>;
    mkdir(path: import("fs").PathLike, options: import("fs").MakeDirectoryOptions & {
        recursive: true;
    }): Promise<string | undefined>;
    mkdir(path: import("fs").PathLike, options?: import("fs").Mode | (import("fs").MakeDirectoryOptions & {
        recursive?: false | undefined;
    }) | null | undefined): Promise<void>;
    mkdir(path: import("fs").PathLike, options?: import("fs").Mode | import("fs").MakeDirectoryOptions | null | undefined): Promise<string | undefined>;
    mkdir(path: import("fs").PathLike, options: import("fs").MakeDirectoryOptions & {
        recursive: true;
    }): Promise<string | undefined>;
    mkdir(path: import("fs").PathLike, options?: import("fs").Mode | (import("fs").MakeDirectoryOptions & {
        recursive?: false | undefined;
    }) | null | undefined): Promise<void>;
    mkdir(path: import("fs").PathLike, options?: import("fs").Mode | import("fs").MakeDirectoryOptions | null | undefined): Promise<string | undefined>;
    readdir(path: import("fs").PathLike, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & {
        withFileTypes?: false | undefined;
        recursive?: boolean | undefined;
    }) | null | undefined): Promise<string[]>;
    readdir(path: import("fs").PathLike, options: "buffer" | {
        encoding: "buffer";
        withFileTypes?: false | undefined;
        recursive?: boolean | undefined;
    }): Promise<Buffer[]>;
    readdir(path: import("fs").PathLike, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & {
        withFileTypes?: false | undefined;
        recursive?: boolean | undefined;
    }) | null | undefined): Promise<string[] | Buffer[]>;
    readdir(path: import("fs").PathLike, options: import("fs").ObjectEncodingOptions & {
        withFileTypes: true;
        recursive?: boolean | undefined;
    }): Promise<import("fs").Dirent[]>;
    readdir(path: import("fs").PathLike, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & {
        withFileTypes?: false | undefined;
        recursive?: boolean | undefined;
    }) | null | undefined): Promise<string[]>;
    readdir(path: import("fs").PathLike, options: "buffer" | {
        encoding: "buffer";
        withFileTypes?: false | undefined;
        recursive?: boolean | undefined;
    }): Promise<Buffer[]>;
    readdir(path: import("fs").PathLike, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & {
        withFileTypes?: false | undefined;
        recursive?: boolean | undefined;
    }) | null | undefined): Promise<string[] | Buffer[]>;
    readdir(path: import("fs").PathLike, options: import("fs").ObjectEncodingOptions & {
        withFileTypes: true;
        recursive?: boolean | undefined;
    }): Promise<import("fs").Dirent[]>;
    readlink(path: import("fs").PathLike, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string>;
    readlink(path: import("fs").PathLike, options: import("fs").BufferEncodingOption): Promise<Buffer>;
    readlink(path: import("fs").PathLike, options?: string | import("fs").ObjectEncodingOptions | null | undefined): Promise<string | Buffer>;
    readlink(path: import("fs").PathLike, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string>;
    readlink(path: import("fs").PathLike, options: import("fs").BufferEncodingOption): Promise<Buffer>;
    readlink(path: import("fs").PathLike, options?: string | import("fs").ObjectEncodingOptions | null | undefined): Promise<string | Buffer>;
    symlink(target: import("fs").PathLike, path: import("fs").PathLike, type?: string | null | undefined): Promise<void>;
    symlink(target: import("fs").PathLike, path: import("fs").PathLike, type?: string | null | undefined): Promise<void>;
    lstat(path: import("fs").PathLike, opts?: (import("fs").StatOptions & {
        bigint?: false | undefined;
    }) | undefined): Promise<import("fs").Stats>;
    lstat(path: import("fs").PathLike, opts: import("fs").StatOptions & {
        bigint: true;
    }): Promise<import("fs").BigIntStats>;
    lstat(path: import("fs").PathLike, opts?: import("fs").StatOptions | undefined): Promise<import("fs").Stats | import("fs").BigIntStats>;
    lstat(path: import("fs").PathLike, opts?: (import("fs").StatOptions & {
        bigint?: false | undefined;
    }) | undefined): Promise<import("fs").Stats>;
    lstat(path: import("fs").PathLike, opts: import("fs").StatOptions & {
        bigint: true;
    }): Promise<import("fs").BigIntStats>;
    lstat(path: import("fs").PathLike, opts?: import("fs").StatOptions | undefined): Promise<import("fs").Stats | import("fs").BigIntStats>;
    stat(path: import("fs").PathLike, opts?: (import("fs").StatOptions & {
        bigint?: false | undefined;
    }) | undefined): Promise<import("fs").Stats>;
    stat(path: import("fs").PathLike, opts: import("fs").StatOptions & {
        bigint: true;
    }): Promise<import("fs").BigIntStats>;
    stat(path: import("fs").PathLike, opts?: import("fs").StatOptions | undefined): Promise<import("fs").Stats | import("fs").BigIntStats>;
    stat(path: import("fs").PathLike, opts?: (import("fs").StatOptions & {
        bigint?: false | undefined;
    }) | undefined): Promise<import("fs").Stats>;
    stat(path: import("fs").PathLike, opts: import("fs").StatOptions & {
        bigint: true;
    }): Promise<import("fs").BigIntStats>;
    stat(path: import("fs").PathLike, opts?: import("fs").StatOptions | undefined): Promise<import("fs").Stats | import("fs").BigIntStats>;
    statfs(path: import("fs").PathLike, opts?: (import("fs").StatFsOptions & {
        bigint?: false | undefined;
    }) | undefined): Promise<import("fs").StatsFs>;
    statfs(path: import("fs").PathLike, opts: import("fs").StatFsOptions & {
        bigint: true;
    }): Promise<import("fs").BigIntStatsFs>;
    statfs(path: import("fs").PathLike, opts?: import("fs").StatFsOptions | undefined): Promise<import("fs").StatsFs | import("fs").BigIntStatsFs>;
    statfs(path: import("fs").PathLike, opts?: (import("fs").StatFsOptions & {
        bigint?: false | undefined;
    }) | undefined): Promise<import("fs").StatsFs>;
    statfs(path: import("fs").PathLike, opts: import("fs").StatFsOptions & {
        bigint: true;
    }): Promise<import("fs").BigIntStatsFs>;
    statfs(path: import("fs").PathLike, opts?: import("fs").StatFsOptions | undefined): Promise<import("fs").StatsFs | import("fs").BigIntStatsFs>;
    link(existingPath: import("fs").PathLike, newPath: import("fs").PathLike): Promise<void>;
    link(existingPath: import("fs").PathLike, newPath: import("fs").PathLike): Promise<void>;
    unlink(path: import("fs").PathLike): Promise<void>;
    unlink(path: import("fs").PathLike): Promise<void>;
    chmod(path: import("fs").PathLike, mode: import("fs").Mode): Promise<void>;
    chmod(path: import("fs").PathLike, mode: import("fs").Mode): Promise<void>;
    lchmod(path: import("fs").PathLike, mode: import("fs").Mode): Promise<void>;
    lchmod(path: import("fs").PathLike, mode: import("fs").Mode): Promise<void>;
    lchown(path: import("fs").PathLike, uid: number, gid: number): Promise<void>;
    lchown(path: import("fs").PathLike, uid: number, gid: number): Promise<void>;
    lutimes(path: import("fs").PathLike, atime: import("fs").TimeLike, mtime: import("fs").TimeLike): Promise<void>;
    lutimes(path: import("fs").PathLike, atime: import("fs").TimeLike, mtime: import("fs").TimeLike): Promise<void>;
    chown(path: import("fs").PathLike, uid: number, gid: number): Promise<void>;
    chown(path: import("fs").PathLike, uid: number, gid: number): Promise<void>;
    utimes(path: import("fs").PathLike, atime: import("fs").TimeLike, mtime: import("fs").TimeLike): Promise<void>;
    utimes(path: import("fs").PathLike, atime: import("fs").TimeLike, mtime: import("fs").TimeLike): Promise<void>;
    realpath(path: import("fs").PathLike, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string>;
    realpath(path: import("fs").PathLike, options: import("fs").BufferEncodingOption): Promise<Buffer>;
    realpath(path: import("fs").PathLike, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string | Buffer>;
    realpath(path: import("fs").PathLike, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string>;
    realpath(path: import("fs").PathLike, options: import("fs").BufferEncodingOption): Promise<Buffer>;
    realpath(path: import("fs").PathLike, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string | Buffer>;
    mkdtemp(prefix: string, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string>;
    mkdtemp(prefix: string, options: import("fs").BufferEncodingOption): Promise<Buffer>;
    mkdtemp(prefix: string, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string | Buffer>;
    mkdtemp(prefix: string, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string>;
    mkdtemp(prefix: string, options: import("fs").BufferEncodingOption): Promise<Buffer>;
    mkdtemp(prefix: string, options?: BufferEncoding | import("fs").ObjectEncodingOptions | null | undefined): Promise<string | Buffer>;
    writeFile(file: import("fs").PathLike | fs.FileHandle, data: string | NodeJS.ArrayBufferView | import("stream").Stream | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & {
        mode?: import("fs").Mode | undefined;
        flag?: import("fs").OpenMode | undefined;
        flush?: boolean | undefined;
    } & import("events").Abortable) | null | undefined): Promise<void>;
    writeFile(file: import("fs").PathLike | fs.FileHandle, data: string | NodeJS.ArrayBufferView | import("stream").Stream | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & {
        mode?: import("fs").Mode | undefined;
        flag?: import("fs").OpenMode | undefined;
    } & import("events").Abortable) | null | undefined): Promise<void>;
    appendFile(path: import("fs").PathLike | fs.FileHandle, data: string | Uint8Array, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & fs.FlagAndOpenMode & {
        flush?: boolean | undefined;
    }) | null | undefined): Promise<void>;
    appendFile(path: import("fs").PathLike | fs.FileHandle, data: string | Uint8Array, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & fs.FlagAndOpenMode) | null | undefined): Promise<void>;
    readFile(path: import("fs").PathLike | fs.FileHandle, options?: ({
        encoding?: null | undefined;
        flag?: import("fs").OpenMode | undefined;
    } & import("events").Abortable) | null | undefined): Promise<Buffer>;
    readFile(path: import("fs").PathLike | fs.FileHandle, options: BufferEncoding | ({
        encoding: BufferEncoding;
        flag?: import("fs").OpenMode | undefined;
    } & import("events").Abortable)): Promise<string>;
    readFile(path: import("fs").PathLike | fs.FileHandle, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & import("events").Abortable & {
        flag?: import("fs").OpenMode | undefined;
    }) | null | undefined): Promise<string | Buffer>;
    readFile(path: import("fs").PathLike | fs.FileHandle, options?: ({
        encoding?: null | undefined;
        flag?: import("fs").OpenMode | undefined;
    } & import("events").Abortable) | null | undefined): Promise<Buffer>;
    readFile(path: import("fs").PathLike | fs.FileHandle, options: ({
        encoding: BufferEncoding;
        flag?: import("fs").OpenMode | undefined;
    } & import("events").Abortable) | BufferEncoding): Promise<string>;
    readFile(path: import("fs").PathLike | fs.FileHandle, options?: BufferEncoding | (import("fs").ObjectEncodingOptions & import("events").Abortable & {
        flag?: import("fs").OpenMode | undefined;
    }) | null | undefined): Promise<string | Buffer>;
    opendir(path: import("fs").PathLike, options?: import("fs").OpenDirOptions | undefined): Promise<import("fs").Dir>;
    opendir(path: import("fs").PathLike, options?: import("fs").OpenDirOptions | undefined): Promise<import("fs").Dir>;
    watch(filename: import("fs").PathLike, options: "buffer" | (import("fs").WatchOptions & {
        encoding: "buffer";
    })): AsyncIterable<fs.FileChangeInfo<Buffer>>;
    watch(filename: import("fs").PathLike, options?: BufferEncoding | import("fs").WatchOptions | undefined): AsyncIterable<fs.FileChangeInfo<string>>;
    watch(filename: import("fs").PathLike, options: string | import("fs").WatchOptions): AsyncIterable<fs.FileChangeInfo<Buffer>> | AsyncIterable<fs.FileChangeInfo<string>>;
    watch(filename: import("fs").PathLike, options: "buffer" | (import("fs").WatchOptions & {
        encoding: "buffer";
    })): AsyncIterable<fs.FileChangeInfo<Buffer>>;
    watch(filename: import("fs").PathLike, options?: BufferEncoding | import("fs").WatchOptions | undefined): AsyncIterable<fs.FileChangeInfo<string>>;
    watch(filename: import("fs").PathLike, options: string | import("fs").WatchOptions): AsyncIterable<fs.FileChangeInfo<Buffer>> | AsyncIterable<fs.FileChangeInfo<string>>;
    cp(source: string | URL, destination: string | URL, opts?: import("fs").CopyOptions | undefined): Promise<void>;
    cp(source: string | URL, destination: string | URL, opts?: import("fs").CopyOptions | undefined): Promise<void>;
    glob(pattern: string | string[]): AsyncIterableIterator<string>;
    glob(pattern: string | string[], opt: import("fs").GlobOptionsWithFileTypes): AsyncIterableIterator<import("fs").Dirent>;
    glob(pattern: string | string[], opt: import("fs").GlobOptionsWithoutFileTypes): AsyncIterableIterator<string>;
    glob(pattern: string | string[], opt: import("fs").GlobOptions): AsyncIterableIterator<string> | AsyncIterableIterator<import("fs").Dirent>;
    constants: typeof import("fs").constants;
};
