import type { FileSystem } from '../internal/filesystem.js'; import type { InodeLike } from '../internal/inode.js'; import type { Mixin } from './shared.js'; /** * @internal */ export interface ReadonlyMixin { rename(oldPath: string, newPath: string): Promise; renameSync(oldPath: string, newPath: string): never; createFile(path: string, flag: string, mode: number): Promise; createFileSync(path: string, flag: string, mode: number): never; unlink(path: string): Promise; unlinkSync(path: string): never; rmdir(path: string): Promise; rmdirSync(path: string): never; mkdir(path: string, mode: number): Promise; mkdirSync(path: string, mode: number): never; link(srcpath: string, dstpath: string): Promise; linkSync(srcpath: string, dstpath: string): never; touch(path: string, metadata: Readonly): Promise; touchSync(path: string, metadata: Readonly): never; sync(): Promise; syncSync(): never; write(path: string, buffer: Uint8Array, offset: number): Promise; writeSync(path: string, buffer: Uint8Array, offset: number): never; } /** * Implements the non-readonly methods to throw `EROFS` * @category Internals */ export declare function Readonly FileSystem>(FS: T): Mixin;