netcdf4-wasm
Version:
NetCDF4 library compiled to WebAssembly with TypeScript bindings
27 lines • 1.11 kB
TypeScript
import type { LazyReader } from "./types";
interface EmscriptenStream {
position: number;
node: unknown;
}
export interface LazyStreamOps {
read(stream: EmscriptenStream, buffer: Uint8Array, offset: number, length: number, position: number): number;
write(): number;
llseek(stream: EmscriptenStream, offset: number, whence: number): number;
}
interface EmscriptenFS {
mkdirTree?(path: string): void;
mkdir(path: string): void;
createFile(parent: string, name: string, properties: Record<string, unknown>, canRead: boolean, canWrite: boolean): any;
}
/**
* Build the read-only `stream_ops` that bridge Emscripten reads to a LazyReader.
* Pure and self-contained so it can be unit-tested without a real WASM module.
*/
export declare function createLazyStreamOps(reader: LazyReader): LazyStreamOps;
/**
* Create a lazily-read file at `path` in the Emscripten filesystem, backed by
* `reader`. Returns the created FS node.
*/
export declare function mountLazyFile(FS: EmscriptenFS, path: string, reader: LazyReader): unknown;
export {};
//# sourceMappingURL=emscripten-fs.d.ts.map