import { ClientSyncLogEntry } from '../client-sync-log/types';
import { StorageRegistry } from '@worldbrain/storex';
export declare type ExecuteAndLog = (originalOperation: any, logEntries: ClientSyncLogEntry[]) => Promise<any>;
export interface OperationProcessorArgs {
    next: {
        process: ({ operation }: {
            operation: any;
        }) => any;
    };
    operation: any[];
    executeAndLog: ExecuteAndLog;
    getNow: () => number;
    storageRegistry: StorageRegistry;
    includeCollections: Set<string>;
}
export declare type OperationProcessor = (args: OperationProcessorArgs) => Promise<any>;
export declare type OperationProcessorMap = {
    [operation: string]: OperationProcessor;
};
export declare const DEFAULT_OPERATION_PROCESSORS: OperationProcessorMap;
