UNPKG

@tokamak-zk-evm/synthesizer

Version:

Tokamak zk-EVM Synthesizer - Processes Ethereum transactions into wire maps for Tokamak zk-SNARK proof generation

73 lines 2.29 kB
import type { PrecompileFunc } from './precompiles/index.js'; import type { MemoryPts } from './tokamak/pointers/index.js'; import type { EOFEnv } from './types.js'; import type { VerkleAccessWitnessInterface } from '@synthesizer-libs/common'; import type { Address, PrefixedHexString } from "@synthesizer-libs/util"; interface MessageOpts { to?: Address; value?: bigint; caller?: Address; gasLimit: bigint; data?: Uint8Array; eofCallData?: Uint8Array; depth?: number; code?: Uint8Array | PrecompileFunc; codeAddress?: Address; isStatic?: boolean; isCompiled?: boolean; salt?: Uint8Array; /** * A set of addresses to selfdestruct, see {@link Message.selfdestruct} */ selfdestruct?: Set<PrefixedHexString>; /** * Map of addresses which were created (used in EIP 6780) */ createdAddresses?: Set<PrefixedHexString>; delegatecall?: boolean; gasRefund?: bigint; blobVersionedHashes?: PrefixedHexString[]; accessWitness?: VerkleAccessWitnessInterface; memoryPts?: MemoryPts; } export declare class Message { to?: Address; value: bigint; caller: Address; gasLimit: bigint; data: Uint8Array; eofCallData?: Uint8Array; isCreate?: boolean; depth: number; code?: Uint8Array | PrecompileFunc; _codeAddress?: Address; isStatic: boolean; isCompiled: boolean; salt?: Uint8Array; eof?: EOFEnv; chargeCodeAccesses?: boolean; memoryPts?: MemoryPts; /** * Set of addresses to selfdestruct. Key is the unprefixed address. */ selfdestruct?: Set<PrefixedHexString>; /** * Map of addresses which were created (used in EIP 6780) */ createdAddresses?: Set<PrefixedHexString>; delegatecall: boolean; gasRefund: bigint; /** * List of versioned hashes if message is a blob transaction in the outer VM */ blobVersionedHashes?: PrefixedHexString[]; accessWitness?: VerkleAccessWitnessInterface; constructor(opts: MessageOpts); /** * Note: should only be called in instances where `_codeAddress` or `to` is defined. */ get codeAddress(): Address; } export type MessageWithTo = Message & Pick<Required<MessageOpts>, 'to'>; export {}; //# sourceMappingURL=message.d.ts.map