import { FundsDepositedEvent, FilledRelayEvent, RequestedSpeedUpDepositEvent } from "../../typechain";
import { providers } from "ethers";
import { Logger } from "../adapters/logger";
import { ISpokePoolContractEventsQuerier } from "../adapters/web3";
import { ChainId } from "../adapters/web3/model";
export declare class SpokePoolEventsQueryService {
    private chainId;
    private provider;
    private eventsQuerier;
    private logger;
    private depositorAddr?;
    private latestBlockNumber;
    constructor(chainId: ChainId, provider: providers.Provider, eventsQuerier: ISpokePoolContractEventsQuerier, logger: Logger, depositorAddr?: string | undefined);
    getEvents(): Promise<{
        emittedFromChainId: number;
        depositEvents: FundsDepositedEvent[];
        filledRelayEvents: FilledRelayEvent[];
        speedUpDepositEvents: RequestedSpeedUpDepositEvent[];
        blockTimestampMap: {
            [blockNumber: number]: number;
        };
    }>;
    /**
     * Take and array of contract events and return the timestamp of the blocks as a dictionary
     * @param events
     */
    private getBlocksTimestamp;
    private getArrayChunks;
}
