///
import type { InterpreterStep } from "@ethereumjs/evm";
import { ConsoleLogs } from "@ganache/console.log";
export type EvmStepContext = {};
export type VmStepData = ReturnType;
export type VmStepEvent = {
readonly context: EvmStepContext;
readonly data: VmStepData;
};
declare function normalizeEvent(event: InterpreterStep): {
account: {
nonce: bigint;
balance: bigint;
stateRoot: Buffer;
codeHash: Buffer;
};
address: Buffer;
codeAddress: Buffer;
depth: bigint;
gasLeft: bigint;
gasRefund: bigint;
memory: Buffer;
memoryWordCount: bigint;
opcode: {
name: string;
fee: number;
};
pc: bigint;
returnStack: bigint[];
stack: bigint[];
};
export declare function makeStepEvent(context: EvmStepContext, event: InterpreterStep): {
context: EvmStepContext;
data: {
account: {
nonce: bigint;
balance: bigint;
stateRoot: Buffer;
codeHash: Buffer;
};
address: Buffer;
codeAddress: Buffer;
depth: bigint;
gasLeft: bigint;
gasRefund: bigint;
memory: Buffer;
memoryWordCount: bigint;
opcode: {
name: string;
fee: number;
};
pc: bigint;
returnStack: bigint[];
stack: bigint[];
};
};
export type VmBeforeTransactionEvent = {
readonly context: EvmStepContext;
};
export type VmAfterTransactionEvent = {
readonly context: EvmStepContext;
};
export type VmConsoleLogEvent = {
readonly context: EvmStepContext;
readonly logs: ConsoleLogs;
};
export type DataEvent = {
jsonrpc: "2.0";
method: "eth_subscription";
params: any;
};
export type MessageEvent = {
readonly type: "eth_subscription";
readonly data: {
readonly subscription: string;
readonly result: unknown;
};
};
export {};
//# sourceMappingURL=provider-events.d.ts.map