import { SendLessonFormData, StepErrors, CategoryConfig } from '../types';
/**
 * Store interface for SendLessonModal
 */
export interface SendLessonModalStore {
    /** Form data */
    formData: Partial<SendLessonFormData>;
    /** Set form data */
    setFormData: (data: Partial<SendLessonFormData>) => void;
    /** Current step (1, 2, or 3) */
    currentStep: number;
    /** Completed steps */
    completedSteps: number[];
    /** Go to a specific step */
    goToStep: (step: number) => void;
    /** Go to next step (validates current step first) */
    nextStep: () => boolean;
    /** Go to previous step */
    previousStep: () => void;
    /** Validation errors */
    errors: StepErrors;
    /** Set errors */
    setErrors: (errors: StepErrors) => void;
    /** Validate current step */
    validateCurrentStep: () => boolean;
    /** Validate all steps */
    validateAllSteps: () => boolean;
    /** Categories state managed by CheckboxGroup */
    categories: CategoryConfig[];
    /** Update categories (called by CheckboxGroup) */
    setCategories: (categories: CategoryConfig[]) => void;
    /** Reset store to initial state */
    reset: () => void;
}
/**
 * Creates the SendLessonModal store
 */
export declare const useSendLessonModalStore: import("zustand").UseBoundStore<import("zustand").StoreApi<SendLessonModalStore>>;
/**
 * Hook to use the SendLessonModal store
 */
export declare function useSendLessonModal(): SendLessonModalStore;
//# sourceMappingURL=useSendLessonModal.d.ts.map