wasmrs-js
Version:
A JavaScript implementation of the RSocket protocol over WebAssembly.
25 lines (22 loc) • 719 B
text/typescript
import { WASI as NodeWasi } from 'wasi';
import { WasiInterface, WasiOptions } from '../wasi';
export class WASI implements WasiInterface {
private wasi: NodeWasi;
constructor(options: WasiOptions) {
this.wasi = new NodeWasi(options);
}
static create(options: WasiOptions): Promise<WasiInterface> {
return Promise.resolve(new WASI(options));
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
start(instance: any): void {
this.wasi.start(instance);
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
initialize(instance: any): void {
this.wasi.initialize(instance);
}
getImports(): WebAssembly.ModuleImports {
return this.wasi.wasiImport;
}
}