import { Data_AptCall, Data_AptResource, HandleInterval, MoveAccountFetchConfig, MoveFetchConfig, ProcessResult } from '@sentio/protos'; export interface EventFilter { type: string; account?: string; eventAccount?: string; } export interface FunctionNameAndCallFilter extends CallFilter { function: string; } export interface TransactionFilter { includeFailed?: boolean; publicKeyPrefix?: string; fromAndToAddress?: { from: string; to: string; }; } export interface CallFilter extends TransactionFilter { typeArguments?: string[]; } export interface ArgumentsFilter { arguments?: string[]; } export declare class EventHandler { filters: EventFilter[]; handlerName: string; handler: (event: T) => Promise; fetchConfig: MoveFetchConfig; partitionHandler?: (event: T) => Promise; } export declare class CallHandler { filters: FunctionNameAndCallFilter[]; handlerName: string; handler: (call: T) => Promise; fetchConfig: MoveFetchConfig; partitionHandler?: (call: T) => Promise; } export declare class ObjectChangeHandler { handlerName: string; handler: (call: T) => Promise; type: string; } export declare class ResourceChangeHandler { handlerName: string; handler: (call: T) => Promise; type: string; partitionHandler?: (call: T) => Promise; } export declare class ResourceIntervalHandler { type?: string; versionInterval?: HandleInterval; timeIntervalInMinutes?: HandleInterval; handler: (resource: Data_AptResource) => Promise; handlerName: string; fetchConfig: MoveAccountFetchConfig; partitionHandler?: (resource: Data_AptResource) => Promise; } export declare class TransactionIntervalHandler { versionInterval?: HandleInterval; timeIntervalInMinutes?: HandleInterval; handler: (tx: Data_AptCall) => Promise; handlerName: string; fetchConfig: MoveFetchConfig; partitionHandler?: (tx: Data_AptCall) => Promise; } //# sourceMappingURL=filter.d.ts.map