import { Vert } from "../vert"; import { Action, Name, PermissionLevel, Transaction } from "@greymass/eosio"; import { Blockchain } from "./blockchain"; import { Account } from "./account"; declare class VM extends Vert { private context; private kvCache; private idx64; private idx128; private idx256; private idxDouble; private snapshot; private bc; imports: any; static from(wasm: Uint8Array | Promise | VM, bc: Blockchain): VM; constructor(wasm: Uint8Array | Promise, bc: Blockchain); private findTable; private findOrCreateTable; private genericIndex; apply(context: VM.Context): void; revert(): void; finalize(): void; } declare namespace VM { class Context { sender: Name; firstReceiver: Account; receiver: Account; action: Name; data: Uint8Array; authorization: PermissionLevel[]; transaction: Transaction; decodedData: Action; constructor(init?: Partial); get isInline(): boolean; get isNotification(): boolean; } } export { VM, };