import { PathLike } from './pathLike'; export type FileEncoding = 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'utf-16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex'; export interface FileProvider { EOL: string; exists(path: PathLike): Promise; joinPath(path: PathLike, joinPath: string): PathLike; dirname(path: PathLike): PathLike | undefined; isAbsolute(path: PathLike): Promise; readFile(fileName: PathLike, encoding: FileEncoding): Promise; readBuffer(fileName: PathLike): Promise; writeBuffer(fileName: PathLike, buffer: Buffer): Promise; readdir: (dirname: PathLike) => Promise; hasExtension(fileName: PathLike, ...extensions: Array): boolean; fsPath(path: PathLike): string | undefined; toString(path: PathLike): string; }