Interface: LowLevelJavascriptVm\
February 16, 2026 ยท View on GitHub
quickjs-emscripten / quickjs-emscripten-core / LowLevelJavascriptVm
Interface: LowLevelJavascriptVm<VmHandle>
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:53
A minimal interface to a Javascript execution environment.
Higher-level tools should build over the LowLevelJavascriptVm interface to share as much as possible between executors.
From https://www.figma.com/blog/how-we-built-the-figma-plugin-system/
Contents
Type Parameters
VmHandle
VmHandle
Properties
global
global:
VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:54
undefined
undefined:
VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:55
Methods
callFunction()
callFunction(
func,thisVal, ...args):VmCallResult<VmHandle>
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:76
Parameters
func
VmHandle
thisVal
VmHandle
args
...VmHandle[]
Returns
VmCallResult<VmHandle>
defineProp()
defineProp(
handle,key,descriptor):void
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:70
Parameters
handle
VmHandle
key
string | VmHandle
descriptor
VmPropertyDescriptor<VmHandle>
Returns
void
evalCode()
evalCode(
code,filename?):VmCallResult<VmHandle>
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:77
Parameters
code
string
filename?
string
Returns
VmCallResult<VmHandle>
getNumber()
getNumber(
handle):number
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:59
Parameters
handle
VmHandle
Returns
number
getProp()
getProp(
handle,key):VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:68
Parameters
handle
VmHandle
key
string | VmHandle
Returns
VmHandle
getString()
getString(
handle):string
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:60
Parameters
handle
VmHandle
Returns
string
newFunction()
newFunction(
name,value):VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:65
Parameters
name
string
value
VmFunctionImplementation<VmHandle>
Returns
VmHandle
newNumber()
newNumber(
value):VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:62
Parameters
value
number
Returns
VmHandle
newObject()
newObject(
prototype?):VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:64
Parameters
prototype?
VmHandle
Returns
VmHandle
newString()
newString(
value):VmHandle
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:63
Parameters
value
string
Returns
VmHandle
setProp()
setProp(
handle,key,value):void
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:69
Parameters
handle
VmHandle
key
string | VmHandle
value
VmHandle
Returns
void
typeof()
typeof(
handle):string
Defined in: packages/quickjs-emscripten-core/src/vm-interface.ts:57
Parameters
handle
VmHandle
Returns
string