import React from "react";
export interface WizardStep {
    id: string;
    title: string;
    description?: string;
    schema: any[];
    validation?: (values: any) => Promise<Record<string, string>>;
    optional?: boolean;
    canSkip?: boolean;
    component?: React.ReactNode;
}
export interface GlassWizardTemplateProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "autoSave"> {
    /**
     * Wizard title
     */
    title: string;
    /**
     * Wizard description
     */
    description?: string;
    /**
     * Wizard steps
     */
    steps: WizardStep[];
    /**
     * Current step index
     */
    currentStep?: number;
    /**
     * Form values
     */
    values?: Record<string, any>;
    /**
     * Form errors
     */
    errors?: Record<string, string>;
    /**
     * Step change handler
     */
    onStepChange?: (step: number) => void;
    /**
     * Form submit handler (called when wizard is completed)
     */
    onSubmit?: (values: Record<string, any>) => Promise<void> | void;
    /**
     * Form cancel handler
     */
    onCancel?: () => void;
    /**
     * Value change handler
     */
    onChange?: (values: Record<string, any>) => void;
    /**
     * Step validation handler
     */
    onStepValidate?: (step: number, values: Record<string, any>) => Promise<Record<string, string>>;
    /**
     * Loading state
     */
    loading?: boolean;
    /**
     * Whether wizard can be saved as draft
     */
    allowDraft?: boolean;
    /**
     * Draft save handler
     */
    onSaveDraft?: (values: Record<string, any>) => void;
    /**
     * Auto-save functionality
     */
    autoSave?: boolean;
    /**
     * Show step indicators
     */
    showStepIndicator?: boolean;
    /**
     * Allow step skipping
     */
    allowSkipping?: boolean;
    /**
     * Layout variant
     */
    layout?: "default" | "compact" | "sidebar";
    /**
     * Button text customization
     */
    submitText?: string;
    cancelText?: string;
    nextText?: string;
    previousText?: string;
    skipText?: string;
    finishText?: string;
}
/**
 * GlassWizardTemplate component
 * Multi-step wizard template with advanced navigation and validation
 */
export declare const GlassWizardTemplate: React.ForwardRefExoticComponent<GlassWizardTemplateProps & React.RefAttributes<HTMLDivElement>>;
//# sourceMappingURL=GlassWizardTemplate.d.ts.map