import { PureComponent, ReactNode } from 'react';
import './tourNavigator.css';
import { TourNavigatorProps, TourNavigatorStates, Step, ClientBoundingRect } from './types';
declare class TourNavigator extends PureComponent<TourNavigatorProps, TourNavigatorStates> {
    static defaultProps: Partial<TourNavigatorProps>;
    private renderElement;
    private scrollingElement;
    private helper;
    private mutationObserver?;
    private lastAvailableStepIndex;
    private subscribe;
    constructor(props: TourNavigatorProps);
    get currentStepIndex(): number;
    get currentStep(): Step | null;
    get currentElement(): HTMLElement | null;
    componentDidMount(): void;
    componentWillUnmount(): void;
    componentDidUpdate(prevProps: Readonly<TourNavigatorProps>, prevState: Readonly<TourNavigatorStates>, snapshot?: any): void;
    mount(): void;
    unmount(): void;
    addListener(element: Element | Document | Window | string, args: [string, (e: Event) => void]): void;
    initMutationObserver(): void;
    mapElements(callback?: () => void): void;
    updateBoundingClientRect(scrollIntoViewOptions?: ScrollIntoViewOptions): void;
    stopCurrentScrollIntoView(): void;
    getDynamicIntersectionOption(): IntersectionObserverInit | undefined;
    getMaskBoundingClientRect(): ClientBoundingRect;
    getHelperBoundingClientRect(): ClientBoundingRect;
    focus(scrollBehavior?: 'smooth' | 'auto'): void;
    goto(stepIndex: number): void;
    next(): void;
    prev(): void;
    renderOverLay(): ReactNode;
    renderHelper(): ReactNode;
    render(): import("react").ReactPortal | null;
}
export default TourNavigator;
