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 {};
