import { Data_FuelTransaction, HandleInterval } from '@sentio/protos'; import { FuelContractContext } from './context.js'; import { Contract, JsonAbi, ReceiptTransfer, ReceiptTransferOut } from 'fuels'; import { FuelNetwork } from './network.js'; import { FuelFetchConfig } from './transaction.js'; import { BlockHandler, CallHandler, ContractTransferFilter, FuelBaseProcessor, FuelBlock, FuelLog, FuelTransaction, ReceiptHandler } from './types.js'; import { PromiseOrVoid, HandlerOptions } from '../core/index.js'; export declare class FuelProcessor implements FuelBaseProcessor { readonly config: FuelProcessorConfig; txHandlers: CallHandler[]; blockHandlers: BlockHandler[]; receiptHandlers: ReceiptHandler[]; private provider; static bind(config: FuelProcessorConfig): FuelProcessor; constructor(config: FuelProcessorConfig); latestGasPrice: string | undefined; configure(): Promise; private getContract; onTransaction(handler: (transaction: FuelTransaction, ctx: FuelContractContext) => PromiseOrVoid, handlerOptions?: HandlerOptions, handlerName?: string): this; private onCall; onLog(logIdFilter: string | string[], handler: (logs: FuelLog, ctx: FuelContractContext) => PromiseOrVoid, handlerOptions?: HandlerOptions>, handlerName?: string): this; onTransfer(filter: ContractTransferFilter, handler: (transfer: ReceiptTransfer | ReceiptTransferOut, ctx: FuelContractContext) => PromiseOrVoid, handlerOptions?: HandlerOptions): this; onInterval(handler: (block: FuelBlock, ctx: FuelContractContext) => PromiseOrVoid, timeInterval: HandleInterval | undefined, blockInterval: HandleInterval | undefined, handlerOptions?: HandlerOptions, handlerName?: string): this; onBlockInterval(handler: (block: FuelBlock, ctx: FuelContractContext) => PromiseOrVoid, blockInterval?: number, backfillBlockInterval?: number, handlerOptions?: HandlerOptions): this; onTimeInterval(handler: (block: FuelBlock, ctx: FuelContractContext) => PromiseOrVoid, timeIntervalInMinutes?: number, backfillTimeIntervalInMinutes?: number, handlerOptions?: HandlerOptions): this; } export type FuelProcessorConfig = { address: string; name?: string; chainId: FuelNetwork; startBlock?: bigint; endBlock?: bigint; abi: JsonAbi; }; export declare function getOptionsSignature(opts: Omit): string; export declare function getFuelProcessor(opts: Omit): FuelBaseProcessor | undefined; export declare function addFuelProcessor(opts: Omit, processor: FuelBaseProcessor): void; //# sourceMappingURL=fuel-processor.d.ts.map