import React from "react"; import { type FormSection } from "@/components/interactive/GlassFormBuilder"; export interface WizardStep { id: string; title: string; description?: string; schema: FormSection[]; validation?: (values: GlassWizardTemplateValues) => Promise>; optional?: boolean; canSkip?: boolean; component?: React.ReactNode; } export type GlassWizardTemplateValues = Record; export interface GlassWizardTemplateProps extends Omit, "autoSave" | "onChange" | "onSubmit"> { /** * Wizard title */ title: string; /** * Wizard description */ description?: string; /** * Wizard steps */ steps: WizardStep[]; /** * Current step index */ currentStep?: number; /** * Form values */ values?: GlassWizardTemplateValues; /** * Form errors */ errors?: Record; /** * Step change handler */ onStepChange?: (step: number) => void; /** * Form submit handler (called when wizard is completed) */ onSubmit?: (values: GlassWizardTemplateValues) => Promise | void; /** * Form cancel handler */ onCancel?: () => void; /** * Value change handler */ onChange?: (values: GlassWizardTemplateValues) => void; /** * Step validation handler */ onStepValidate?: (step: number, values: GlassWizardTemplateValues) => Promise>; /** * Loading state */ loading?: boolean; /** * Whether wizard can be saved as draft */ allowDraft?: boolean; /** * Draft save handler */ onSaveDraft?: (values: GlassWizardTemplateValues) => 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>; //# sourceMappingURL=GlassWizardTemplate.d.ts.map