/** * WebAssembly 関連のツール */ declare class WasmTool { private constructor(); /** * `WebAssembly.Module` インスタンスを生成 * * @param wasm_base64 - wasm バイナリを base64 化した文字列 * * @return `WebAssembly.Module` インスタンス (Promise) */ static createModuleByBese64(wasm_base64: string): Promise; /** * Emscripten モジュールを生成 (base64 wasm から) * * @param wasm_base64 - wasm バイナリを base64 化した文字列 * @param em_factory - Emscripten モジュールを生成する関数 * * @return Emscripten モジュール (Promise) * * @see createEmObjectByModule */ static createEmObjectByBese64(wasm_base64: string, em_factory: EmModuleFactory): Promise; /** * Emscripten モジュールを生成 (`WebAssembly.Module` から) * * @param wa_module - WebAssembly モジュール * @param em_factory - Emscripten モジュールを生成する関数 * * @return Emscripten モジュール (Promise) * * @see createEmObjectByBese64 */ static createEmObjectByModule(wa_module: WebAssembly.Module, em_factory: EmModuleFactory): Promise; /** * `wasm_base64` をバイナリに変換 */ private static _createArrayBuffer; } /** * Emscripten モジュールの型 * * ツールにより動的にプロパティが作成されるので、ここでは個々のプロパ * ティを定義しない。 * * 詳細は以下を参照のこと。 * https://emscripten.org/docs/api_reference/module.html */ export interface EmModule { [id: string]: any; } /** * Emscripten モジュールを生成する関数の型 * * この関数の実装は一般的に Emscripten のツールによって生成される。 */ export interface EmModuleFactory { /** * @param em_module - 入力 Emscripten モジュール * * @return 出力 Emscripten モジュール */ (em_module: EmModule): Promise; } export default WasmTool; //# sourceMappingURL=WasmTool.d.ts.map