import { Bindings } from '../../run/types'; import { Code } from '../../ast/types'; import { Engine } from '../../run/types'; import { FsRawModule } from '../../stdlib/fs/bindings-javascript'; import { CommonsRawModule } from '../../stdlib/commons/bindings-javascript'; export interface EngineLifecycleRawModule { metadata: Engine['metadata']; initialize: Engine['initialize']; dspLoop: Engine['dspLoop']; io: Engine['io']; } export type RawJavaScriptEngine = CommonsRawModule & FsRawModule & EngineLifecycleRawModule; export declare const compileRawModule: (code: Code) => EngineLifecycleRawModule; export declare const createEngineBindings: (rawModule: RawJavaScriptEngine) => Bindings; export declare const createEngine: (code: Code, additionalBindings?: Bindings) => Engine;