blob: 96e3ef6c62794c9671fc0c1676fdaac76aeb3693 [file] [log] [blame]
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import type {Vector} from '../src/SymbolsBackend.js';
export interface Debugger {
runToLine(line: string): Promise<void>;
evaluate(expr: string): Promise<EvalResult>;
exit(): Promise<void>;
}
export interface EvalResult {
error?: string;
result?: string;
}
interface Module extends EmscriptenModule {
// eslint-disable-next-line @typescript-eslint/naming-convention
StringArray: Vector<string>;
runTests(dbg: Debugger, args: Vector<string>): Promise<number>;
}
declare let loadModule: EmscriptenModuleFactory<Module>;
export default loadModule;