import { VueNode } from '../_util/type';
import { TourProps, TourStepProps, TourBtnProps } from './interface';
import { CreateComponentPublicInstanceWithMixins, ExtractPropTypes, PropType, CSSProperties, ComponentOptionsMixin, PublicProps, GlobalComponents, GlobalDirectives, ComponentProvideOptions, ComponentOptionsBase, VNodeProps, AllowedComponentProps, ComponentCustomProps, Plugin } from 'vue';
import { PlacementType } from '../vc-tour/placements';
import { VueTypeValidableDef } from 'vue-types';
import { Gap } from '../vc-tour/hooks/useTarget';
import { TourStepProps } from '../vc-tour';
export { TourProps, TourStepProps };
declare const _default: {
    new (...args: any[]): CreateComponentPublicInstanceWithMixins<Readonly< ExtractPropTypes<{
        steps: {
            type: PropType<Partial< ExtractPropTypes<{
                cover: {
                    type: PropType<VueNode>;
                };
                nextButtonProps: {
                    type: PropType<TourBtnProps>;
                };
                prevButtonProps: {
                    type: PropType<TourBtnProps>;
                };
                current: {
                    type: NumberConstructor;
                };
                type: {
                    type: PropType<"default" | "primary">;
                };
                prefixCls: {
                    type: StringConstructor;
                };
                total: {
                    type: NumberConstructor;
                };
                onClose: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onFinish: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                renderPanel: {
                    type: PropType<(step: any, current: number) => VueNode>;
                    default: (step: any, current: number) => VueNode;
                };
                onPrev: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onNext: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                arrow: {
                    type: PropType<boolean | {
                        pointAtCenter: boolean;
                    }>;
                    default: boolean | {
                        pointAtCenter: boolean;
                    };
                };
                target: {
                    type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                    default: HTMLElement | (() => HTMLElement) | (() => null) | null;
                };
                title: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                description: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                placement: {
                    type: PropType<PlacementType>;
                    default: PlacementType;
                };
                mask: {
                    type: PropType<boolean | {
                        style?: CSSProperties;
                        color?: string;
                    }>;
                    default: boolean | {
                        style?: CSSProperties;
                        color?: string;
                    };
                };
                className: {
                    type: StringConstructor;
                };
                style: {
                    type: PropType<CSSProperties>;
                    default: CSSProperties;
                };
                scrollIntoViewOptions: {
                    type: PropType<boolean | ScrollIntoViewOptions>;
                    default: boolean | ScrollIntoViewOptions;
                };
            }>>[]>;
        };
        prefixCls: {
            type: StringConstructor;
        };
        current: {
            type: NumberConstructor;
        };
        type: {
            type: PropType<"default" | "primary">;
        };
        'onUpdate:current': PropType<(val: number) => void>;
        builtinPlacements: VueTypeValidableDef<{
            [key: string]: any;
        }> & {
            default: () => {
                [key: string]: any;
            };
        };
        popupAlign: VueTypeValidableDef<{
            [key: string]: any;
        }> & {
            default: () => {
                [key: string]: any;
            };
        } & {
            default: () => {
                [key: string]: any;
            };
        };
        open: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultCurrent: {
            type: NumberConstructor;
        };
        onChange: {
            type: PropType<(current: number) => void>;
            default: (current: number) => void;
        };
        onClose: {
            type: PropType<(current: number) => void>;
            default: (current: number) => void;
        };
        onFinish: {
            type: PropType<() => void>;
            default: () => void;
        };
        mask: {
            type: PropType<boolean | {
                style?: CSSProperties;
                color?: string;
            }>;
            default: boolean | {
                style?: CSSProperties;
                color?: string;
            };
        };
        arrow: {
            type: PropType<boolean | {
                pointAtCenter: boolean;
            }>;
            default: boolean | {
                pointAtCenter: boolean;
            };
        };
        rootClassName: {
            type: StringConstructor;
        };
        placement: {
            type: PropType<PlacementType>;
            default: PlacementType;
        };
        renderPanel: {
            type: PropType<(props: Partial< ExtractPropTypes<{
                prefixCls: {
                    type: StringConstructor;
                };
                total: {
                    type: NumberConstructor;
                };
                current: {
                    type: NumberConstructor;
                };
                onClose: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onFinish: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                renderPanel: {
                    type: PropType<(step: any, current: number) => VueNode>;
                    default: (step: any, current: number) => VueNode;
                };
                onPrev: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onNext: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                arrow: {
                    type: PropType<boolean | {
                        pointAtCenter: boolean;
                    }>;
                    default: boolean | {
                        pointAtCenter: boolean;
                    };
                };
                target: {
                    type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                    default: HTMLElement | (() => HTMLElement) | (() => null) | null;
                };
                title: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                description: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                placement: {
                    type: PropType<PlacementType>;
                    default: PlacementType;
                };
                mask: {
                    type: PropType<boolean | {
                        style?: CSSProperties;
                        color?: string;
                    }>;
                    default: boolean | {
                        style?: CSSProperties;
                        color?: string;
                    };
                };
                className: {
                    type: StringConstructor;
                };
                style: {
                    type: PropType<CSSProperties>;
                    default: CSSProperties;
                };
                scrollIntoViewOptions: {
                    type: PropType<boolean | ScrollIntoViewOptions>;
                    default: boolean | ScrollIntoViewOptions;
                };
            }>>, current: number) => VueNode>;
            default: (props: Partial< ExtractPropTypes<{
                prefixCls: {
                    type: StringConstructor;
                };
                total: {
                    type: NumberConstructor;
                };
                current: {
                    type: NumberConstructor;
                };
                onClose: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onFinish: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                renderPanel: {
                    type: PropType<(step: any, current: number) => VueNode>;
                    default: (step: any, current: number) => VueNode;
                };
                onPrev: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onNext: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                arrow: {
                    type: PropType<boolean | {
                        pointAtCenter: boolean;
                    }>;
                    default: boolean | {
                        pointAtCenter: boolean;
                    };
                };
                target: {
                    type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                    default: HTMLElement | (() => HTMLElement) | (() => null) | null;
                };
                title: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                description: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                placement: {
                    type: PropType<PlacementType>;
                    default: PlacementType;
                };
                mask: {
                    type: PropType<boolean | {
                        style?: CSSProperties;
                        color?: string;
                    }>;
                    default: boolean | {
                        style?: CSSProperties;
                        color?: string;
                    };
                };
                className: {
                    type: StringConstructor;
                };
                style: {
                    type: PropType<CSSProperties>;
                    default: CSSProperties;
                };
                scrollIntoViewOptions: {
                    type: PropType<boolean | ScrollIntoViewOptions>;
                    default: boolean | ScrollIntoViewOptions;
                };
            }>>, current: number) => VueNode;
        };
        gap: {
            type: PropType<Gap>;
            default: Gap;
        };
        animated: {
            type: PropType<boolean | {
                placeholder: boolean;
            }>;
            default: boolean | {
                placeholder: boolean;
            };
        };
        scrollIntoViewOptions: {
            type: PropType<boolean | ScrollIntoViewOptions>;
            default: boolean | ScrollIntoViewOptions;
        };
        zIndex: {
            type: NumberConstructor;
            default: number;
        };
    }>> & Readonly<{}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, PublicProps, {
        open: boolean;
        mask: boolean | {
            style?: CSSProperties;
            color?: string;
        };
        zIndex: number;
        gap: Gap;
        onChange: (current: number) => void;
        onClose: (current: number) => void;
        arrow: boolean | {
            pointAtCenter: boolean;
        };
        builtinPlacements: {
            [key: string]: any;
        };
        popupAlign: {
            [key: string]: any;
        };
        placement: PlacementType;
        scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
        animated: boolean | {
            placeholder: boolean;
        };
        onFinish: () => void;
        renderPanel: (props: Partial< ExtractPropTypes<{
            prefixCls: {
                type: StringConstructor;
            };
            total: {
                type: NumberConstructor;
            };
            current: {
                type: NumberConstructor;
            };
            onClose: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            onFinish: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            renderPanel: {
                type: PropType<(step: any, current: number) => VueNode>;
                default: (step: any, current: number) => VueNode;
            };
            onPrev: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            onNext: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            arrow: {
                type: PropType<boolean | {
                    pointAtCenter: boolean;
                }>;
                default: boolean | {
                    pointAtCenter: boolean;
                };
            };
            target: {
                type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                default: HTMLElement | (() => HTMLElement) | (() => null) | null;
            };
            title: {
                type: PropType<VueNode>;
                default: VueNode;
            };
            description: {
                type: PropType<VueNode>;
                default: VueNode;
            };
            placement: {
                type: PropType<PlacementType>;
                default: PlacementType;
            };
            mask: {
                type: PropType<boolean | {
                    style?: CSSProperties;
                    color?: string;
                }>;
                default: boolean | {
                    style?: CSSProperties;
                    color?: string;
                };
            };
            className: {
                type: StringConstructor;
            };
            style: {
                type: PropType<CSSProperties>;
                default: CSSProperties;
            };
            scrollIntoViewOptions: {
                type: PropType<boolean | ScrollIntoViewOptions>;
                default: boolean | ScrollIntoViewOptions;
            };
        }>>, current: number) => VueNode;
    }, true, {}, {}, GlobalComponents, GlobalDirectives, string, {}, any, ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly< ExtractPropTypes<{
        steps: {
            type: PropType<Partial< ExtractPropTypes<{
                cover: {
                    type: PropType<VueNode>;
                };
                nextButtonProps: {
                    type: PropType<TourBtnProps>;
                };
                prevButtonProps: {
                    type: PropType<TourBtnProps>;
                };
                current: {
                    type: NumberConstructor;
                };
                type: {
                    type: PropType<"default" | "primary">;
                };
                prefixCls: {
                    type: StringConstructor;
                };
                total: {
                    type: NumberConstructor;
                };
                onClose: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onFinish: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                renderPanel: {
                    type: PropType<(step: any, current: number) => VueNode>;
                    default: (step: any, current: number) => VueNode;
                };
                onPrev: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onNext: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                arrow: {
                    type: PropType<boolean | {
                        pointAtCenter: boolean;
                    }>;
                    default: boolean | {
                        pointAtCenter: boolean;
                    };
                };
                target: {
                    type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                    default: HTMLElement | (() => HTMLElement) | (() => null) | null;
                };
                title: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                description: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                placement: {
                    type: PropType<PlacementType>;
                    default: PlacementType;
                };
                mask: {
                    type: PropType<boolean | {
                        style?: CSSProperties;
                        color?: string;
                    }>;
                    default: boolean | {
                        style?: CSSProperties;
                        color?: string;
                    };
                };
                className: {
                    type: StringConstructor;
                };
                style: {
                    type: PropType<CSSProperties>;
                    default: CSSProperties;
                };
                scrollIntoViewOptions: {
                    type: PropType<boolean | ScrollIntoViewOptions>;
                    default: boolean | ScrollIntoViewOptions;
                };
            }>>[]>;
        };
        prefixCls: {
            type: StringConstructor;
        };
        current: {
            type: NumberConstructor;
        };
        type: {
            type: PropType<"default" | "primary">;
        };
        'onUpdate:current': PropType<(val: number) => void>;
        builtinPlacements: VueTypeValidableDef<{
            [key: string]: any;
        }> & {
            default: () => {
                [key: string]: any;
            };
        };
        popupAlign: VueTypeValidableDef<{
            [key: string]: any;
        }> & {
            default: () => {
                [key: string]: any;
            };
        } & {
            default: () => {
                [key: string]: any;
            };
        };
        open: {
            type: BooleanConstructor;
            default: boolean;
        };
        defaultCurrent: {
            type: NumberConstructor;
        };
        onChange: {
            type: PropType<(current: number) => void>;
            default: (current: number) => void;
        };
        onClose: {
            type: PropType<(current: number) => void>;
            default: (current: number) => void;
        };
        onFinish: {
            type: PropType<() => void>;
            default: () => void;
        };
        mask: {
            type: PropType<boolean | {
                style?: CSSProperties;
                color?: string;
            }>;
            default: boolean | {
                style?: CSSProperties;
                color?: string;
            };
        };
        arrow: {
            type: PropType<boolean | {
                pointAtCenter: boolean;
            }>;
            default: boolean | {
                pointAtCenter: boolean;
            };
        };
        rootClassName: {
            type: StringConstructor;
        };
        placement: {
            type: PropType<PlacementType>;
            default: PlacementType;
        };
        renderPanel: {
            type: PropType<(props: Partial< ExtractPropTypes<{
                prefixCls: {
                    type: StringConstructor;
                };
                total: {
                    type: NumberConstructor;
                };
                current: {
                    type: NumberConstructor;
                };
                onClose: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onFinish: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                renderPanel: {
                    type: PropType<(step: any, current: number) => VueNode>;
                    default: (step: any, current: number) => VueNode;
                };
                onPrev: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onNext: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                arrow: {
                    type: PropType<boolean | {
                        pointAtCenter: boolean;
                    }>;
                    default: boolean | {
                        pointAtCenter: boolean;
                    };
                };
                target: {
                    type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                    default: HTMLElement | (() => HTMLElement) | (() => null) | null;
                };
                title: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                description: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                placement: {
                    type: PropType<PlacementType>;
                    default: PlacementType;
                };
                mask: {
                    type: PropType<boolean | {
                        style?: CSSProperties;
                        color?: string;
                    }>;
                    default: boolean | {
                        style?: CSSProperties;
                        color?: string;
                    };
                };
                className: {
                    type: StringConstructor;
                };
                style: {
                    type: PropType<CSSProperties>;
                    default: CSSProperties;
                };
                scrollIntoViewOptions: {
                    type: PropType<boolean | ScrollIntoViewOptions>;
                    default: boolean | ScrollIntoViewOptions;
                };
            }>>, current: number) => VueNode>;
            default: (props: Partial< ExtractPropTypes<{
                prefixCls: {
                    type: StringConstructor;
                };
                total: {
                    type: NumberConstructor;
                };
                current: {
                    type: NumberConstructor;
                };
                onClose: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onFinish: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                renderPanel: {
                    type: PropType<(step: any, current: number) => VueNode>;
                    default: (step: any, current: number) => VueNode;
                };
                onPrev: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                onNext: {
                    type: PropType<(e: MouseEvent) => void>;
                    default: (e: MouseEvent) => void;
                };
                arrow: {
                    type: PropType<boolean | {
                        pointAtCenter: boolean;
                    }>;
                    default: boolean | {
                        pointAtCenter: boolean;
                    };
                };
                target: {
                    type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                    default: HTMLElement | (() => HTMLElement) | (() => null) | null;
                };
                title: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                description: {
                    type: PropType<VueNode>;
                    default: VueNode;
                };
                placement: {
                    type: PropType<PlacementType>;
                    default: PlacementType;
                };
                mask: {
                    type: PropType<boolean | {
                        style?: CSSProperties;
                        color?: string;
                    }>;
                    default: boolean | {
                        style?: CSSProperties;
                        color?: string;
                    };
                };
                className: {
                    type: StringConstructor;
                };
                style: {
                    type: PropType<CSSProperties>;
                    default: CSSProperties;
                };
                scrollIntoViewOptions: {
                    type: PropType<boolean | ScrollIntoViewOptions>;
                    default: boolean | ScrollIntoViewOptions;
                };
            }>>, current: number) => VueNode;
        };
        gap: {
            type: PropType<Gap>;
            default: Gap;
        };
        animated: {
            type: PropType<boolean | {
                placeholder: boolean;
            }>;
            default: boolean | {
                placeholder: boolean;
            };
        };
        scrollIntoViewOptions: {
            type: PropType<boolean | ScrollIntoViewOptions>;
            default: boolean | ScrollIntoViewOptions;
        };
        zIndex: {
            type: NumberConstructor;
            default: number;
        };
    }>> & Readonly<{}>, () => VueNode, {}, {}, {}, {
        open: boolean;
        mask: boolean | {
            style?: CSSProperties;
            color?: string;
        };
        zIndex: number;
        gap: Gap;
        onChange: (current: number) => void;
        onClose: (current: number) => void;
        arrow: boolean | {
            pointAtCenter: boolean;
        };
        builtinPlacements: {
            [key: string]: any;
        };
        popupAlign: {
            [key: string]: any;
        };
        placement: PlacementType;
        scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
        animated: boolean | {
            placeholder: boolean;
        };
        onFinish: () => void;
        renderPanel: (props: Partial< ExtractPropTypes<{
            prefixCls: {
                type: StringConstructor;
            };
            total: {
                type: NumberConstructor;
            };
            current: {
                type: NumberConstructor;
            };
            onClose: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            onFinish: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            renderPanel: {
                type: PropType<(step: any, current: number) => VueNode>;
                default: (step: any, current: number) => VueNode;
            };
            onPrev: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            onNext: {
                type: PropType<(e: MouseEvent) => void>;
                default: (e: MouseEvent) => void;
            };
            arrow: {
                type: PropType<boolean | {
                    pointAtCenter: boolean;
                }>;
                default: boolean | {
                    pointAtCenter: boolean;
                };
            };
            target: {
                type: PropType<HTMLElement | (() => HTMLElement) | (() => null) | null>;
                default: HTMLElement | (() => HTMLElement) | (() => null) | null;
            };
            title: {
                type: PropType<VueNode>;
                default: VueNode;
            };
            description: {
                type: PropType<VueNode>;
                default: VueNode;
            };
            placement: {
                type: PropType<PlacementType>;
                default: PlacementType;
            };
            mask: {
                type: PropType<boolean | {
                    style?: CSSProperties;
                    color?: string;
                }>;
                default: boolean | {
                    style?: CSSProperties;
                    color?: string;
                };
            };
            className: {
                type: StringConstructor;
            };
            style: {
                type: PropType<CSSProperties>;
                default: CSSProperties;
            };
            scrollIntoViewOptions: {
                type: PropType<boolean | ScrollIntoViewOptions>;
                default: boolean | ScrollIntoViewOptions;
            };
        }>>, current: number) => VueNode;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & ComponentOptionsBase<Readonly< ExtractPropTypes<{
    steps: {
        type: PropType<TourStepProps[]>;
    };
    prefixCls: {
        type: StringConstructor;
    };
    current: {
        type: NumberConstructor;
    };
    type: {
        type: PropType<"default" | "primary">;
    };
    'onUpdate:current': PropType<(val: number) => void>;
    builtinPlacements: VueTypeValidableDef<{
        [key: string]: any;
    }> & {
        default: () => {
            [key: string]: any;
        };
    };
    popupAlign: VueTypeValidableDef<{
        [key: string]: any;
    }> & {
        default: () => {
            [key: string]: any;
        };
    } & {
        default: () => {
            [key: string]: any;
        };
    };
    open: {
        type: BooleanConstructor;
        default: boolean;
    };
    defaultCurrent: {
        type: NumberConstructor;
    };
    onChange: {
        type: PropType<(current: number) => void>;
        default: (current: number) => void;
    };
    onClose: {
        type: PropType<(current: number) => void>;
        default: (current: number) => void;
    };
    onFinish: {
        type: PropType<() => void>;
        default: () => void;
    };
    mask: {
        type: PropType<boolean | {
            style?: CSSProperties;
            color?: string;
        }>;
        default: boolean | {
            style?: CSSProperties;
            color?: string;
        };
    };
    arrow: {
        type: PropType<boolean | {
            pointAtCenter: boolean;
        }>;
        default: boolean | {
            pointAtCenter: boolean;
        };
    };
    rootClassName: {
        type: StringConstructor;
    };
    placement: {
        type: PropType<PlacementType>;
        default: PlacementType;
    };
    renderPanel: {
        type: PropType<(props: TourStepProps, current: number) => VueNode>;
        default: (props: TourStepProps, current: number) => VueNode;
    };
    gap: {
        type: PropType<Gap>;
        default: Gap;
    };
    animated: {
        type: PropType<boolean | {
            placeholder: boolean;
        }>;
        default: boolean | {
            placeholder: boolean;
        };
    };
    scrollIntoViewOptions: {
        type: PropType<boolean | ScrollIntoViewOptions>;
        default: boolean | ScrollIntoViewOptions;
    };
    zIndex: {
        type: NumberConstructor;
        default: number;
    };
}>> & Readonly<{}>, () => VueNode, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
    open: boolean;
    mask: boolean | {
        style?: CSSProperties;
        color?: string;
    };
    zIndex: number;
    gap: Gap;
    onChange: (current: number) => void;
    onClose: (current: number) => void;
    arrow: boolean | {
        pointAtCenter: boolean;
    };
    builtinPlacements: {
        [key: string]: any;
    };
    popupAlign: {
        [key: string]: any;
    };
    placement: PlacementType;
    scrollIntoViewOptions: boolean | ScrollIntoViewOptions;
    animated: boolean | {
        placeholder: boolean;
    };
    onFinish: () => void;
    renderPanel: (props: TourStepProps, current: number) => VueNode;
}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & VNodeProps & AllowedComponentProps & ComponentCustomProps & Plugin;
export default _default;
