/// import type WASIFileSystem from "./filesystem"; export type { WASIFileSystem }; import { WASI_FILETYPE } from "./constants"; export interface WASIBindings { hrtime: () => bigint; exit: (rval: number) => void; kill: (signal: string) => void; randomFillSync: Function; isTTY: (fd: number) => boolean; fs: any; path: any; os?: any; child_process?: any; posix?: any; } export declare type WASIArgs = string[]; export interface WASIEnv { [key: string]: string | undefined; } export interface WASIPreopenedDirs { [key: string]: string; } export interface WASIConfig { preopens?: WASIPreopenedDirs; env?: WASIEnv; args?: WASIArgs; bindings: WASIBindings; sleep?: (milliseconds: number) => void; getStdin?: () => Buffer; sendStdout?: (Buffer: any) => void; sendStderr?: (Buffer: any) => void; } export declare class WASIError extends Error { errno: number; constructor(errno: number); } export declare class WASIExitError extends Error { code: number | null; constructor(code: number | null); } export declare class WASIKillError extends Error { signal: string; constructor(signal: string); } interface Rights { base: bigint; inheriting: bigint; } export interface File { real: number; path?: string; fakePath?: string; rights: Rights; offset?: bigint; filetype?: WASI_FILETYPE; socktype?: number; }