import { Interface } from '@ethersproject/abi'; import { DeepReadonly } from 'ts-essentials'; import { Log, Logger } from '../../types'; import { StatefulEventSubscriber } from '../../stateful-event-subscriber'; import { IDexHelper } from '../../dex-helper/idex-helper'; import { PoolState } from './types'; export declare class AaveGsmEventPool extends StatefulEventSubscriber { readonly gsm: string; readonly underlying: string; readonly pool: string; readonly parentName: string; protected network: number; protected dexHelper: IDexHelper; protected aaveGsmIface: Interface; protected aaveStataIface: Interface; protected feeStrategyIface: Interface; protected poolIface: Interface; protected PERCENT_FACTOR: bigint; RAY: bigint; handlers: { [event: string]: (event: any, state: DeepReadonly, log: Readonly) => Promise | null>; }; logDecoder: (log: Log) => any; addressesSubscribed: string[]; constructor(gsm: string, underlying: string, pool: string, parentName: string, network: number, dexHelper: IDexHelper, logger: Logger, aaveGsmIface?: Interface, aaveStataIface?: Interface, feeStrategyIface?: Interface, poolIface?: Interface, PERCENT_FACTOR?: bigint); getIdentifier(): string; protected processLog(state: DeepReadonly, log: Readonly): Promise | null>; getOnChainState(address: string, blockNumber?: number | string): Promise; generateState(blockNumber?: number | string): Promise>; handleFeeStrategyUpdated(event: any, state: DeepReadonly, log: Readonly): Promise | null>; handleSwapFreeze(event: any, state: DeepReadonly, log: Readonly): Promise | null>; handleSeized(event: any, state: DeepReadonly, log: Readonly): Promise | null>; handleExposureCapUpdated(event: any, state: DeepReadonly, log: Readonly): Promise | null>; handleBuyAsset(event: any, state: DeepReadonly, log: Readonly): Promise | null>; handleSellAsset(event: any, state: DeepReadonly, log: Readonly): Promise | null>; handleReserveDataUpdated(event: any, state: DeepReadonly, log: Readonly): Promise | null>; }