import { Value } from "./values"; import { Context, RootContext } from "./ctx"; import { Expr, Program } from "./gen_parser"; import { Binder } from "./bind"; export declare class Interpreter { global: RootContext; binder: Binder; private pendingCnt; private rejectFn; private resolveFn; private execPromise; constructor(tps?: number, externals?: (ctx: Context) => [string, Value][]); stop(): void; inject(p: () => Promise): void; interpret(p: Program, stopOnErr?: boolean): Promise; evalExpr(expr: Expr): Promise; }