import { StatefulEventSubscriber } from './stateful-event-subscriber'; import { AsyncOrSync, DeepReadonly } from 'ts-essentials'; import { Address, BlockHeader, Log, Logger, MultiCallInput, MultiCallOutput } from './types'; import { Lens } from './lens'; import { IDexHelper } from './dex-helper/idex-helper'; export declare abstract class PartialEventSubscriber { addressesSubscribed: Address[]; lens: Lens, DeepReadonly>; protected logger: Logger; constructor(addressesSubscribed: Address[], lens: Lens, DeepReadonly>, logger: Logger); abstract processLog(state: DeepReadonly, log: Readonly, blockHeader: Readonly): AsyncOrSync | null>; abstract getGenerateStateMultiCallInputs(): MultiCallInput[]; abstract generateState(multicallOutputs: MultiCallOutput[], blockNumber?: number | 'latest'): AsyncOrSync>; } export declare abstract class ComposedEventSubscriber extends StatefulEventSubscriber { protected dexHelper: IDexHelper; private parts; private blankState; addressesSubscribed: Address[]; private addressSubscribers; private multiCallInputs; private multiCallSlices; constructor(parentName: string, name: string, logger: Logger, dexHelper: IDexHelper, parts: PartialEventSubscriber[], blankState: DeepReadonly); protected processLog(state: DeepReadonly, log: Readonly, blockHeader: Readonly): Promise | null>; generateState(blockNumber?: number | 'latest'): Promise>; }