import { Layer } from "effect"; import type { Address, Block, Hash, Hex, TransactionReceipt, WatchContractEventParameters } from "viem"; import { PublicClientService } from "../core/index.js"; export type MockPublicClientConfig = { readContract?: (params: unknown) => Promise; multicall?: (params: unknown) => Promise>; estimateContractGas?: (params: unknown) => Promise; simulateContract?: (params: unknown) => Promise<{ request: unknown; result: unknown; }>; getBalance?: (params: { address: Address; blockTag?: "latest" | "pending"; blockNumber?: bigint; }) => Promise; waitForTransactionReceipt?: (params: { hash: Hash; }) => Promise; getTransactionConfirmations?: (params: { hash: Hash; } | { transactionReceipt: TransactionReceipt; }) => Promise; getTransactionCount?: (params: { address: Address; blockTag: "latest" | "pending"; }) => Promise; watchContractEvent?: (params: WatchContractEventParameters) => () => void; getLogs?: (params: unknown) => Promise; getBlockNumber?: () => Promise; getBlock?: (params: unknown) => Promise; watchBlockNumber?: (params: unknown) => () => void; watchBlocks?: (params: unknown) => () => void; watchEvent?: (params: unknown) => () => void; watchPendingTransactions?: (params: unknown) => () => void; getGasPrice?: () => Promise; estimateMaxPriorityFeePerGas?: () => Promise; estimateGas?: (params: unknown) => Promise; getBytecode?: (params: { address: Address; }) => Promise; getEnsAddress?: (params: unknown) => Promise
; getEnsName?: (params: unknown) => Promise; getEnsAvatar?: (params: unknown) => Promise; getEnsText?: (params: unknown) => Promise; getEnsResolver?: (params: unknown) => Promise
; }; export declare const makeMockPublicClientLayer: (config?: MockPublicClientConfig, supportedChainId?: number) => Layer.Layer; //# sourceMappingURL=mock-public-client.d.ts.map