Tour Kit — @tour-kit/core Context File Version: 0.3.0 | Generated: 2026-03-31 Paste this into your LLM to get accurate answers about @tour-kit/core. ========================================================================= OVERVIEW -------- Headless onboarding and product tour library for React - Core package INSTALLATION ------------ npm install @tour-kit/core # or pnpm add @tour-kit/core Peer dependencies: react: ^18.0.0 || ^19.0.0 react-dom: ^18.0.0 || ^19.0.0 EXPORTS ------- Types: // Branch types BranchTarget BranchToTour BranchSkip BranchWait BranchContext BranchResolver Branch UseBranchReturn // Config types Side Alignment Placement Position Rect KeyboardConfig SpotlightConfig Storage PersistenceConfig A11yConfig ScrollConfig Direction TourKitConfig TourStep StepOptions Tour TourOptions TourState TourCallbackContext TourActions TourContextValue HotspotPosition HintConfig HintState HintsState HintsActions HintsContextValue RouterAdapter MultiPagePersistenceConfig TourKitContextValue TourKitProviderProps TourProviderProps UseTourReturn UseStepReturn UseSpotlightReturn ElementPositionResult UseFocusTrapReturn UsePersistenceReturn UseRoutePersistenceReturn UseAdvanceOnOptions PositionResult LogLevel LoggerConfig ThrottledFunction ThrottledFunctionWithFlush Hooks: useTourKitContext useDirection useTourContext useTour useStep useSpotlight useElementPosition useKeyboardNavigation useFocusTrap usePersistence useMediaQuery usePrefersReducedMotion useRoutePersistence useAdvanceOn useBranch Components: TourKitContext TourKitProvider TourContext TourProvider Utilities: defaultKeyboardConfig defaultSpotlightConfig defaultPersistenceConfig defaultA11yConfig defaultScrollConfig initialTourState dispatchAdvanceEvent getElement isElementVisible isElementPartiallyVisible waitForElement getFocusableElements getScrollParent getElementRect getViewportDimensions parsePlacement calculatePosition wouldOverflow getOppositeSide getFallbackPlacements calculatePositionWithCollision getDocumentDirection mirrorSide mirrorAlignment mirrorPlacementForRTL scrollIntoView scrollTo getScrollPosition lockScroll createStorageAdapter createNoopStorage createCookieStorage safeJSONParse createPrefixedStorage announce generateId prefersReducedMotion getStepAnnouncement createTour createNamedTour createStep createNamedStep logger // Branch utilities MAX_BRANCH_DEPTH isBranchToTour isBranchSkip isBranchWait isSpecialTarget isBranchResolver resolveBranch resolveTargetToIndex isLoopDetected // Throttle utilities throttleRAF throttleTime throttleLeading HOOKS ----- useTourKitContext(...) useDirection(...) useTourContext(...) useTour(...) useStep(...) useSpotlight(...) useElementPosition(...) useKeyboardNavigation(...) useFocusTrap(...) usePersistence(...) useMediaQuery(...) usePrefersReducedMotion(...) useRoutePersistence(...) useAdvanceOn(...) useBranch(...) COMPONENTS ---------- EXAMPLES -------- Example 1: Usage import { useAdvanceOn } from '@tour-kit/core'; function MyTourStep() { // Enables advanceOn behavior based on current step config useAdvanceOn({ enabled: true }); return {/* ... */}; } Example 2: Step Configuration Example 3: Event Types