import { type BlockNumber, type BlockTag, type EIP1193RequestFn, type EIP1474Methods, type Hash, type LogTopic } from "viem"; import { type Address } from "../../utils/address.js"; export type GetLogsBlockParams = { fromBlock?: BlockNumber | BlockTag; toBlock?: BlockNumber | BlockTag; blockHash?: never; blockRange?: never; } | { fromBlock?: never; toBlock?: never; blockHash?: Hash; blockRange?: never; } | { fromBlock?: BlockNumber | "latest"; toBlock?: never; blockRange: BlockNumber; blockHash?: never; } | { fromBlock?: never; toBlock?: BlockNumber | "latest"; blockRange: BlockNumber; blockHash?: never; } | { fromBlock?: never; toBlock?: never; blockRange: BlockNumber; blockHash?: never; }; export type GetLogsParams = { topics?: LogTopic[]; address?: Address; } & GetLogsBlockParams; /** * Retrieves logs from the Ethereum blockchain based on the specified parameters. * @param request - The EIP1193 request function. * @param params - The parameters for retrieving logs. * @returns A promise that resolves to the retrieved logs. * @rpc * @example * ```ts * import { getRpcClient, eth_getLogs } from "thirdweb/rpc"; * const rpcRequest = getRpcClient({ client, chain }); * const logs = await eth_getLogs(rpcRequest, { * address: "0x...", * fromBlock: 123456n, * toBlock: 123456n, * }); * ``` */ export declare function eth_getLogs(request: EIP1193RequestFn, params?: GetLogsParams): Promise; //# sourceMappingURL=eth_getLogs.d.ts.map