import { ERC20Token } from '../../types/token.types';
import { IPublicTokensDB } from './IPublicTokensDB';
export declare class EventsPublicTokensDB implements IPublicTokensDB {
    private fetchedTokens;
    private updateMutexes;
    private readonly transferEventTopic;
    private readonly chunkSize;
    private getMutex;
    private withRegistryOverlay;
    getPublicTokens(chainId: number, walletAddress: string): Promise<ERC20Token[]>;
    getFetchedTokens(chainId: number, walletAddress: string): ERC20Token[];
    fetchAndUpdatePublicTokens(walletAddress: string, chainId: number): Promise<void>;
    private getLastProcessedBlock;
    private updateLastProcessedBlock;
    private getEvents;
    private updateTokenIds;
    private fetchPublicTokens;
}
export declare const eventsPublicTokensDB: EventsPublicTokensDB;
