import { fileSync, dirSync, tmpNameSync, setGracefulCleanup } from "tmp"; import { FileOptions, DirOptions, TmpNameOptions } from "tmp"; export interface DirectoryResult { path: string; cleanup: () => Promise; } export interface FileResult extends DirectoryResult { fd: number; } export function file(options?: FileOptions): Promise; export function withFile( fn: (result: FileResult) => Promise, options?: FileOptions ): Promise; export function dir(options?: DirOptions): Promise; export function withDir( fn: (results: DirectoryResult) => Promise, options?: DirOptions ): Promise; export function tmpName(options?: TmpNameOptions): Promise; export { fileSync, dirSync, tmpNameSync, setGracefulCleanup };