import { CheckoutFormData } from "./checkout-schema";
export type CheckoutStep = "customer" | "shipping" | "payment";
export interface FormStore {
    formData: Partial<CheckoutFormData>;
    setFormData: (formData: Partial<CheckoutFormData>) => void;
    step: CheckoutStep;
    setStep: (step: CheckoutStep) => void;
    checkoutId: string;
    setCheckoutId: (checkoutId: string) => void;
}
export declare const useFormStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<FormStore>, "persist"> & {
    persist: {
        setOptions: (options: Partial<import("zustand/middleware").PersistOptions<FormStore, FormStore>>) => void;
        clearStorage: () => void;
        rehydrate: () => Promise<void> | void;
        hasHydrated: () => boolean;
        onHydrate: (fn: (state: FormStore) => void) => () => void;
        onFinishHydration: (fn: (state: FormStore) => void) => () => void;
        getOptions: () => Partial<import("zustand/middleware").PersistOptions<FormStore, FormStore>>;
    };
}>;
export declare const resetFormStore: (formData: Partial<CheckoutFormData>) => void;
