A list of (some) of the runtime methods avaliable in Emscripten. You can also find some more in https://emscripten.org/docs/api_reference/preamble.js.html There's a lot more -- search repo:emscripten-core/emscripten path:src/lib/lib*.js with GitHub search to see the avaliable paths, but these are the autogenerated types:
declare namespace RuntimeExports {
/**
* @param {string|null=} returnType
* @param {Array=} argTypes
* @param {Arguments|Array=} args
* @param {Object=} opts
*/
function ccall(ident: any, returnType?: (string | null) | undefined, argTypes?: any[] | undefined, args?: (Arguments | any[]) | undefined, opts?: any | undefined): any;
/**
* @param {string=} returnType
* @param {Array=} argTypes
* @param {Object=} opts
*/
function cwrap(ident: any, returnType?: string | undefined, argTypes?: any[] | undefined, opts?: any | undefined): (...args: any[]) => any;
/**
* Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the
* emscripten HEAP, returns a copy of that string as a Javascript String object.
*
* @param {number} ptr
* @param {number=} maxBytesToRead - An optional length that specifies the
* maximum number of bytes to read. You can omit this parameter to scan the
* string until the first 0 byte. If maxBytesToRead is passed, and the string
* at [ptr, ptr+maxBytesToReadr[ contains a null byte in the middle, then the
* string will cut short at that byte index (i.e. maxBytesToRead will not
* produce a string of exact length [ptr, ptr+maxBytesToRead[) N.B. mixing
* frequent uses of UTF8ToString() with and without maxBytesToRead may throw
* JS JIT optimizations off, so it is worth to consider consistently using one
* @return {string}
*/
function UTF8ToString(ptr: number, maxBytesToRead?: number | undefined): string;
/**
* @param {number} ptr
* @param {string} type
*/
function getValue(ptr: number, type?: string): any;
/**
* @param {number} ptr
* @param {number} value
* @param {string} type
*/
function setValue(ptr: number, value: number, type?: string): void;
function lengthBytesUTF8(str: any): number;
function stringToUTF8(str: any, outPtr: any, maxBytesToWrite: any): any;
function stringToUTF8Array(str: any, heap: any, outIdx: any, maxBytesToWrite: any): number;
function stringToNewUTF8(str: any): any;
function writeArrayToMemory(array: any, buffer: any): void;
function getNativeTypeSize(type: any): any;
function intArrayToString(array: any): string;
function intArrayFromString(arg0: string, arg1?: boolean | undefined, arg2?: number | undefined): any;
function warnOnce(text: any): void;
/** @param {string=} sig */
function addFunction(func: any, sig?: string | undefined): any;
function removeFunction(index: any): void;
function allocate(slab: any, allocator: any): any;
function AsciiToString(ptr: any): string;
function stringToAscii(str: any, buffer: any): void;
function UTF16ToString(ptr: any, maxBytesToRead: any): any;
function stringToUTF16(str: any, outPtr: any, maxBytesToWrite: any): number;
function lengthBytesUTF16(str: any): number;
function UTF32ToString(ptr: any, maxBytesToRead: any): string;
function stringToUTF32(str: any, outPtr: any, maxBytesToWrite: any): number;
function lengthBytesUTF32(str: any): number;
let allocateUTF8: any;
let allocateUTF8OnStack: any;
/** @deprecated @param {boolean=} dontAddNull */
function writeStringToMemory(string: any, buffer: any, dontAddNull?: boolean | undefined): void;
/** @param {boolean=} dontAddNull */
function writeAsciiToMemory(str: any, buffer: any, dontAddNull?: boolean | undefined): void;
function getTempRet0(val: any): any;
function setTempRet0(val: any): any;
let run: any;
function getWasmTableEntry(funcPtr: any): any;
function setWasmTableEntry(idx: any, func: any): void;
let hasExportedSymbol: any;
function stackAlloc(sz: any): any;
let FS_createPath: any;
function FS_createDataFile(parent: any, name: any, fileData: any, canRead: any, canWrite: any, canOwn: any): void;
function FS_createPreloadedFile(parent: any, name: any, url: any, canRead: any, canWrite: any, onload: any, onerror: any, dontCreateFile: any, canOwn: any, preFinish: any): void;
function FS_unlink(path: any): any;
let FS_createLazyFile: any;
let FS_createDevice: any;
let addRunDependency: any;
let removeRunDependency: any;
}