@sane-shopify/sync-utils
Version:
Syncing utility for Node & the browser
21 lines (20 loc) • 942 B
TypeScript
import { LinkOperation, SyncOperation, Product, Collection, SyncMachineState } from '@sane-shopify/types';
interface SyncStateMachineArgs {
onStateChange: (state: SyncMachineState) => void;
}
interface SyncStateMachineValues {
initialState: SyncMachineState;
init: (valid: boolean, shopName: string) => void;
startSync: () => void;
onDocumentsFetched: (docs: Array<Product | Collection>) => void;
onFetchComplete: (docs?: Array<Product | Collection>) => void;
onDocumentSynced: (op: SyncOperation) => void;
onDocumentLinked: (op: LinkOperation) => void;
onComplete: () => void;
onError: (error: Error) => void;
onSavedSecrets: (shopName: string) => void;
onSavedSecretsError: (error: Error, message?: string) => void;
onClearedSecrets: () => void;
}
export declare const syncStateMachine: ({ onStateChange, }: SyncStateMachineArgs) => SyncStateMachineValues;
export {};