import type { GetProof } from 'web3-eth'; import type { BlockNumber } from 'web3-core'; import type { Method } from 'web3-core-method'; import type { JsonTx } from '@ethereumjs/tx'; export type { GetProof, BlockNumber, Method }; export declare type Bytes = string; export declare type Bytes32 = string; export declare type AddressHex = string; export declare type ChainId = number; export declare type HexString = string; export declare type ExecutionInfo = { blockhash: string; blockNumber: bigint; }; export declare type AccessList = { address: AddressHex; storageKeys: Bytes32[]; }[]; export interface RPCTx { from?: string; to?: string; gas?: string; gasPrice?: string; maxFeePerGas?: string; maxPriorityFeePerGas?: string; accessList?: AccessList; value?: string; data?: string; } export declare type AccountRequest = { type: 'account'; blockNumber: bigint; addressHex: AddressHex; storageSlots: Bytes32[]; }; export declare type CodeRequest = { type: 'code'; blockNumber: bigint; addressHex: AddressHex; }; export declare type AccountResponse = GetProof; export declare type CodeResponse = string; export declare type Request = AccountRequest | CodeRequest; export declare type Response = AccountResponse | CodeResponse; export declare type RequestMethodCallback = (error: Error, data: Response) => void; export declare type JSONRPCBlock = { number: string; hash: string; parentHash: string; mixHash?: string; nonce: string; sha3Uncles: string; logsBloom: string; transactionsRoot: string; stateRoot: string; receiptsRoot: string; miner: string; difficulty: string; totalDifficulty: string; extraData: string; size: string; gasLimit: string; gasUsed: string; timestamp: string; transactions: Array; uncles: string[]; baseFeePerGas?: string; }; export declare type JSONRPCTx = { blockHash: string | null; blockNumber: string | null; from: string; gas: string; gasPrice: string; maxFeePerGas?: string; maxPriorityFeePerGas?: string; type: string; accessList?: JsonTx['accessList']; chainId?: string; hash: string; input: string; nonce: string; to: string | null; transactionIndex: string | null; value: string; v: string; r: string; s: string; }; export declare type JSONRPCReceipt = { transactionHash: string; transactionIndex: string; blockHash: string; blockNumber: string; from: string; to: string | null; cumulativeGasUsed: string; effectiveGasPrice: string; gasUsed: string; contractAddress: string | null; logs: JSONRPCLog[]; logsBloom: string; type: string; root?: string; status?: string; }; export declare type JSONRPCLogFilter = { fromBlock?: string; toBlock?: string; address?: string | string[]; topics?: (string | string[] | null)[]; blockHash?: string; }; export declare type JSONRPCLog = { removed: boolean; logIndex: string | null; transactionIndex: string | null; transactionHash: string | null; blockHash: string | null; blockNumber: string | null; address: string; data: string; topics: string[]; };