import { Fr } from '@aztec/foundation/fields'; import { AvmMachineState } from '../avm_machine_state.js'; import { AvmMessageCallResult } from '../avm_message_call_result.js'; import { AvmJournal } from '../journal/index.js'; import { Instruction } from '../opcodes/index.js'; /** * Avm Interpreter * * Executes an Avm context */ export declare class AvmInterpreter { private instructions; private machineState; private journal; constructor(machineState: AvmMachineState, stateManager: AvmJournal, instructions: Instruction[]); /** * Run the avm * @returns bool - successful execution will return true * - reverted execution will return false * - any other panic will throw */ run(): Promise; /** * Get the return data from avm execution * TODO: this should fail if the code has not been executed * - maybe move the return in run into a variable and track it */ returnData(): Fr[]; } /** * Avm-specific errors should derive from this */ export declare abstract class AvmInterpreterError extends Error { constructor(message: string, ...rest: any[]); } /** * Error is thrown when the program counter goes to an invalid location. * There is no instruction at the provided pc */ export declare class InvalidProgramCounterError extends AvmInterpreterError { constructor(pc: number, max: number); } //# sourceMappingURL=interpreter.d.ts.map