import { type ReactNode } from "react"; export interface OnboardingStepConfig { /** URL path segment for this step (e.g., 'business-function') */ path: string; /** Display name for progress indicator */ name: string; /** * The component to render for this step. * Use the `useOnboarding()` hook inside the component to access navigation helpers. */ component: React.ComponentType; } export interface OnboardingStepProps { /** Navigate to next step */ goNext: () => void; /** Navigate to previous step */ goBack: () => void; /** Navigate to a specific step by path */ goTo: (path: string) => void; /** Current step index (0-based) */ currentStep: number; /** Total number of steps */ totalSteps: number; /** Whether this is the first step */ isFirst: boolean; /** Whether this is the last step */ isLast: boolean; /** Current step path */ currentPath: string; } export interface OnboardingContextValue extends OnboardingStepProps { /** All step configurations */ steps: OnboardingStepConfig[]; /** Base path for the wizard */ basePath: string; } export interface OnboardingWizardConfig { /** Base path for the onboarding wizard (e.g., '/onboarding') */ basePath?: string; /** Step configurations */ steps: OnboardingStepConfig[]; /** Callback when wizard completes (navigates past last step) */ onComplete?: () => void; /** Callback when user exits/cancels */ onExit?: () => void; } export declare function useOnboarding(): OnboardingContextValue; export declare function useOnboardingOptional(): OnboardingContextValue | null; interface OnboardingProviderProps { children: ReactNode; config: OnboardingWizardConfig; } export declare function OnboardingProvider({ children, config, }: OnboardingProviderProps): import("react/jsx-runtime").JSX.Element; export {}; //# sourceMappingURL=onboarding-context.d.ts.map