@worldbrain/storex-sync
Version:
Offline-first syncing between multiple databases using Storex
21 lines (20 loc) • 788 B
TypeScript
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;