import { type TourDismissSource } from './TourContext';
/**
 * Read-only view of the active Tour's state, for custom step UIs or
 * instrumentation. Returns `null` when called outside a `<Tour>`.
 */
export interface UseTourReturn {
    /** Zero-based index of the active step. */
    activeStepIndex: number;
    /** Total number of registered steps. */
    stepCount: number;
    /** Whether the active step is the first one. */
    isFirstStep: boolean;
    /** Whether the active step is the last one. */
    isLastStep: boolean;
    /** Advance to the next step (or complete on the last step). */
    next: () => void;
    /** Return to the previous step. */
    previous: () => void;
    /** Dismiss the tour with a reason. */
    dismiss: (source: TourDismissSource) => void;
}
/**
 * Access the current Tour controller state. Must be used inside a `<Tour>`;
 * returns `null` otherwise so callers can guard.
 */
export declare function useTour(): UseTourReturn | null;
//# sourceMappingURL=useTour.d.ts.map