taglib-wasm
Version:
TagLib-Wasm is the universal tagging library for TypeScript/JavaScript platforms: Browsers, Node.js, Deno, Bun, Cloudflare Workers, and Electron apps
25 lines • 817 B
TypeScript
/**
* @fileoverview Filesystem provider interface for runtime-agnostic WASI host
*
* Abstracts the 6 file operations needed by WASI syscalls so that
* Deno, Node.js, and Bun can all use seek-based I/O.
*/
export type WasiFileHandle = {
readSync(target: Uint8Array): number | null;
writeSync(data: Uint8Array): number;
seekSync(offset: number, whence: 0 | 1 | 2): number;
truncateSync(size: number): void;
close(): void;
};
export type WasiOpenOptions = {
read: boolean;
write: boolean;
create?: boolean;
truncate?: boolean;
};
export type FileSystemProvider = {
openSync(path: string, options: WasiOpenOptions): WasiFileHandle;
readFile(path: string): Promise<Uint8Array>;
isNotFoundError(error: unknown): boolean;
};
//# sourceMappingURL=wasi-fs-provider.d.ts.map