import { Log } from 'viem';
import { Address } from '@hyperlane-xyz/utils';
import { MultiProvider } from '../../providers/MultiProvider.js';
import { ChainNameOrId } from '../../types.js';
import { GetEventLogsResponse } from './types.js';
export declare function getContractCreationBlockFromRpc(chain: ChainNameOrId, contractAddress: Address, multiProvider: MultiProvider): Promise<number>;
export type GetLogsFromRpcOptions = {
    chain: ChainNameOrId;
    contractAddress: Address;
    multiProvider: MultiProvider;
    fromBlock: number;
    topic: string;
    toBlock?: number;
    range?: number;
};
export declare function getLogsFromRpc({ chain, contractAddress, multiProvider, fromBlock, topic, toBlock, range, }: GetLogsFromRpcOptions): Promise<GetEventLogsResponse[]>;
export declare function viemLogFromGetEventLogsResponse(log: GetEventLogsResponse): Log;
//# sourceMappingURL=utils.d.ts.map