import type { HermesClient, HexString, UnixTimestamp } from "@pythnetwork/hermes-client"; import type { Logger } from "pino"; import type { IPricePusher, PriceInfo, PriceItem } from "../interface.js"; import { ChainPriceListener } from "../interface.js"; import type { DurationInSeconds } from "../utils.js"; import type { GasPriceConfig } from "./gas-price.js"; import type { PythContract } from "./pyth-contract.js"; import type { SuperWalletClient } from "./super-wallet.js"; export declare class EvmPriceListener extends ChainPriceListener { private pythContract; private watchEvents; private logger; constructor(pythContract: PythContract, priceItems: PriceItem[], watchEvents: boolean, logger: Logger, config: { pollingFrequency: DurationInSeconds; }); start(): Promise; private startWatching; private onPriceFeedUpdate; getOnChainPriceInfo(priceId: HexString): Promise; } export declare class EvmPricePusher implements IPricePusher { private hermesClient; private client; private pythContract; private logger; private overrideGasPriceMultiplier; private overrideGasPriceMultiplierCap; private updateFeeMultiplier; private gasPriceConfig; private gasLimit?; private receiptWaitTimeoutMs; private receiptPollIntervalMs; private pusherAddress; private lastPushAttempt; private receiptTrackers; private trackedNonce; constructor(hermesClient: HermesClient, client: SuperWalletClient, pythContract: PythContract, logger: Logger, overrideGasPriceMultiplier: number, overrideGasPriceMultiplierCap: number, updateFeeMultiplier: number, gasPriceConfig: GasPriceConfig, gasLimit?: number | undefined, receiptWaitTimeoutMs?: number, receiptPollIntervalMs?: number); updatePriceFeed(priceIds: string[], pubTimesToPush: UnixTimestamp[]): Promise; dispose(): void; private trackTransactionReceipt; private pollTransactionReceipt; private interruptibleSleep; private getPriceFeedsUpdateData; }