import { CreateElement } from 'vue';
import { GuideStep } from './type';
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
    classPrefix: import("@vue/composition-api").Ref<string>;
    componentName: import("@vue/composition-api").ComputedRef<string>;
    innerCurrent: import("@vue/composition-api").Ref<number>;
    isPopup: import("@vue/composition-api").ComputedRef<boolean>;
    currentElmIsFixed: import("@vue/composition-api").ComputedRef<boolean>;
    currentStepInfo: import("@vue/composition-api").ComputedRef<GuideStep>;
    stepsTotal: import("@vue/composition-api").ComputedRef<number>;
    handlePrev: (e: MouseEvent) => void;
    handleNext: (e: MouseEvent) => void;
    handleSkip: (e: MouseEvent) => void;
    handleFinish: (e: MouseEvent) => void;
    getCurrentCrossProps: <Key extends "showOverlay" | "mode" | "nextButtonProps" | "prevButtonProps" | "skipButtonProps" | "highlightPadding">(propsName: Key) => GuideStep[Key] | Readonly<import("@vue/composition-api").ExtractPropTypes<{
        counter: {
            type: import("vue").PropType<(h: CreateElement, props: {
                current: number;
                total: number;
            }) => import("vue/types/vnode").ScopedSlotReturnValue>;
        };
        current: {
            type: NumberConstructor;
        };
        defaultCurrent: {
            type: NumberConstructor;
        };
        finishButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        hideCounter: BooleanConstructor;
        hidePrev: BooleanConstructor;
        hideSkip: BooleanConstructor;
        highlightPadding: {
            type: NumberConstructor;
            default: number;
        };
        mode: {
            type: import("vue").PropType<"dialog" | "popup">;
            default: "dialog" | "popup";
            validator(val: "dialog" | "popup"): boolean;
        };
        nextButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        prevButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        showOverlay: {
            type: BooleanConstructor;
            default: boolean;
        };
        skipButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        steps: {
            type: import("vue").PropType<GuideStep[]>;
        };
        zIndex: {
            type: NumberConstructor;
            default: number;
        };
        onChange: import("vue").PropType<(current: number, context?: {
            e: MouseEvent;
            total: number;
        }) => void>;
        onFinish: import("vue").PropType<(context: {
            e: MouseEvent;
            current: number;
            total: number;
        }) => void>;
        onNextStepClick: import("vue").PropType<(context: {
            e: MouseEvent;
            next: number;
            current: number;
            total: number;
        }) => void>;
        onPrevStepClick: import("vue").PropType<(context: {
            e: MouseEvent;
            prev: number;
            current: number;
            total: number;
        }) => void>;
        onSkip: import("vue").PropType<(context: {
            e: MouseEvent;
            current: number;
            total: number;
        }) => void>;
    }>>[Key];
    global: import("@vue/composition-api").ComputedRef<{} & (import("../config-provider/type").GuideConfig | {
        readonly finishButtonProps: {
            readonly content: "完成";
            readonly theme: "primary";
        };
        readonly nextButtonProps: {
            readonly content: "下一步";
            readonly theme: "primary";
        };
        readonly skipButtonProps: {
            readonly content: "跳过";
            readonly theme: "default";
        };
        readonly prevButtonProps: {
            readonly content: "上一步";
            readonly theme: "default";
        };
    }) & import("../config-provider/type").GuideConfig>;
    highlightLayerRef: import("@vue/composition-api").Ref<HTMLElement>;
    overlayLayerRef: import("@vue/composition-api").Ref<HTMLElement>;
    referenceLayerRef: import("@vue/composition-api").Ref<HTMLElement>;
    currentHighlightLayerElm: import("@vue/composition-api").Ref<HTMLElement>;
    dialogWrapperRef: import("@vue/composition-api").Ref<HTMLElement>;
    dialogTooltipRef: import("@vue/composition-api").Ref<HTMLElement>;
    activated: import("@vue/composition-api").Ref<boolean>;
}> & import("@vue/composition-api").Data, {}, {}, {
    counter: {
        type: import("vue").PropType<(h: CreateElement, props: {
            current: number;
            total: number;
        }) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    current: {
        type: NumberConstructor;
    };
    defaultCurrent: {
        type: NumberConstructor;
    };
    finishButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    hideCounter: BooleanConstructor;
    hidePrev: BooleanConstructor;
    hideSkip: BooleanConstructor;
    highlightPadding: {
        type: NumberConstructor;
        default: number;
    };
    mode: {
        type: import("vue").PropType<"dialog" | "popup">;
        default: "dialog" | "popup";
        validator(val: "dialog" | "popup"): boolean;
    };
    nextButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    prevButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    showOverlay: {
        type: BooleanConstructor;
        default: boolean;
    };
    skipButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    steps: {
        type: import("vue").PropType<GuideStep[]>;
    };
    zIndex: {
        type: NumberConstructor;
        default: number;
    };
    onChange: import("vue").PropType<(current: number, context?: {
        e: MouseEvent;
        total: number;
    }) => void>;
    onFinish: import("vue").PropType<(context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void>;
    onNextStepClick: import("vue").PropType<(context: {
        e: MouseEvent;
        next: number;
        current: number;
        total: number;
    }) => void>;
    onPrevStepClick: import("vue").PropType<(context: {
        e: MouseEvent;
        prev: number;
        current: number;
        total: number;
    }) => void>;
    onSkip: import("vue").PropType<(context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void>;
}, import("@vue/composition-api").ExtractPropTypes<{
    counter: {
        type: import("vue").PropType<(h: CreateElement, props: {
            current: number;
            total: number;
        }) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    current: {
        type: NumberConstructor;
    };
    defaultCurrent: {
        type: NumberConstructor;
    };
    finishButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    hideCounter: BooleanConstructor;
    hidePrev: BooleanConstructor;
    hideSkip: BooleanConstructor;
    highlightPadding: {
        type: NumberConstructor;
        default: number;
    };
    mode: {
        type: import("vue").PropType<"dialog" | "popup">;
        default: "dialog" | "popup";
        validator(val: "dialog" | "popup"): boolean;
    };
    nextButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    prevButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    showOverlay: {
        type: BooleanConstructor;
        default: boolean;
    };
    skipButtonProps: {
        type: import("vue").PropType<import("../button").TdButtonProps>;
    };
    steps: {
        type: import("vue").PropType<GuideStep[]>;
    };
    zIndex: {
        type: NumberConstructor;
        default: number;
    };
    onChange: import("vue").PropType<(current: number, context?: {
        e: MouseEvent;
        total: number;
    }) => void>;
    onFinish: import("vue").PropType<(context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void>;
    onNextStepClick: import("vue").PropType<(context: {
        e: MouseEvent;
        next: number;
        current: number;
        total: number;
    }) => void>;
    onPrevStepClick: import("vue").PropType<(context: {
        e: MouseEvent;
        prev: number;
        current: number;
        total: number;
    }) => void>;
    onSkip: import("vue").PropType<(context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    zIndex: number;
    showOverlay: boolean;
    mode: "dialog" | "popup";
    highlightPadding: number;
    hideCounter: boolean;
    hidePrev: boolean;
    hideSkip: boolean;
} & {
    onChange?: (current: number, context?: {
        e: MouseEvent;
        total: number;
    }) => void;
    steps?: GuideStep[];
    current?: number;
    defaultCurrent?: number;
    onFinish?: (context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void;
    counter?: (h: CreateElement, props: {
        current: number;
        total: number;
    }) => import("vue/types/vnode").ScopedSlotReturnValue;
    finishButtonProps?: unknown;
    nextButtonProps?: unknown;
    prevButtonProps?: unknown;
    skipButtonProps?: unknown;
    onNextStepClick?: (context: {
        e: MouseEvent;
        next: number;
        current: number;
        total: number;
    }) => void;
    onPrevStepClick?: (context: {
        e: MouseEvent;
        prev: number;
        current: number;
        total: number;
    }) => void;
    onSkip?: (context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    classPrefix: import("@vue/composition-api").Ref<string>;
    componentName: import("@vue/composition-api").ComputedRef<string>;
    innerCurrent: import("@vue/composition-api").Ref<number>;
    isPopup: import("@vue/composition-api").ComputedRef<boolean>;
    currentElmIsFixed: import("@vue/composition-api").ComputedRef<boolean>;
    currentStepInfo: import("@vue/composition-api").ComputedRef<GuideStep>;
    stepsTotal: import("@vue/composition-api").ComputedRef<number>;
    handlePrev: (e: MouseEvent) => void;
    handleNext: (e: MouseEvent) => void;
    handleSkip: (e: MouseEvent) => void;
    handleFinish: (e: MouseEvent) => void;
    getCurrentCrossProps: <Key extends "showOverlay" | "mode" | "nextButtonProps" | "prevButtonProps" | "skipButtonProps" | "highlightPadding">(propsName: Key) => GuideStep[Key] | Readonly<import("@vue/composition-api").ExtractPropTypes<{
        counter: {
            type: import("vue").PropType<(h: CreateElement, props: {
                current: number;
                total: number;
            }) => import("vue/types/vnode").ScopedSlotReturnValue>;
        };
        current: {
            type: NumberConstructor;
        };
        defaultCurrent: {
            type: NumberConstructor;
        };
        finishButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        hideCounter: BooleanConstructor;
        hidePrev: BooleanConstructor;
        hideSkip: BooleanConstructor;
        highlightPadding: {
            type: NumberConstructor;
            default: number;
        };
        mode: {
            type: import("vue").PropType<"dialog" | "popup">;
            default: "dialog" | "popup";
            validator(val: "dialog" | "popup"): boolean;
        };
        nextButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        prevButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        showOverlay: {
            type: BooleanConstructor;
            default: boolean;
        };
        skipButtonProps: {
            type: import("vue").PropType<import("../button").TdButtonProps>;
        };
        steps: {
            type: import("vue").PropType<GuideStep[]>;
        };
        zIndex: {
            type: NumberConstructor;
            default: number;
        };
        onChange: import("vue").PropType<(current: number, context?: {
            e: MouseEvent;
            total: number;
        }) => void>;
        onFinish: import("vue").PropType<(context: {
            e: MouseEvent;
            current: number;
            total: number;
        }) => void>;
        onNextStepClick: import("vue").PropType<(context: {
            e: MouseEvent;
            next: number;
            current: number;
            total: number;
        }) => void>;
        onPrevStepClick: import("vue").PropType<(context: {
            e: MouseEvent;
            prev: number;
            current: number;
            total: number;
        }) => void>;
        onSkip: import("vue").PropType<(context: {
            e: MouseEvent;
            current: number;
            total: number;
        }) => void>;
    }>>[Key];
    global: import("@vue/composition-api").ComputedRef<{} & (import("../config-provider/type").GuideConfig | {
        readonly finishButtonProps: {
            readonly content: "完成";
            readonly theme: "primary";
        };
        readonly nextButtonProps: {
            readonly content: "下一步";
            readonly theme: "primary";
        };
        readonly skipButtonProps: {
            readonly content: "跳过";
            readonly theme: "default";
        };
        readonly prevButtonProps: {
            readonly content: "上一步";
            readonly theme: "default";
        };
    }) & import("../config-provider/type").GuideConfig>;
    highlightLayerRef: import("@vue/composition-api").Ref<HTMLElement>;
    overlayLayerRef: import("@vue/composition-api").Ref<HTMLElement>;
    referenceLayerRef: import("@vue/composition-api").Ref<HTMLElement>;
    currentHighlightLayerElm: import("@vue/composition-api").Ref<HTMLElement>;
    dialogWrapperRef: import("@vue/composition-api").Ref<HTMLElement>;
    dialogTooltipRef: import("@vue/composition-api").Ref<HTMLElement>;
    activated: import("@vue/composition-api").Ref<boolean>;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    zIndex: number;
    showOverlay: boolean;
    mode: "dialog" | "popup";
    highlightPadding: number;
    hideCounter: boolean;
    hidePrev: boolean;
    hideSkip: boolean;
} & {
    onChange?: (current: number, context?: {
        e: MouseEvent;
        total: number;
    }) => void;
    steps?: GuideStep[];
    current?: number;
    defaultCurrent?: number;
    onFinish?: (context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void;
    counter?: (h: CreateElement, props: {
        current: number;
        total: number;
    }) => import("vue/types/vnode").ScopedSlotReturnValue;
    finishButtonProps?: unknown;
    nextButtonProps?: unknown;
    prevButtonProps?: unknown;
    skipButtonProps?: unknown;
    onNextStepClick?: (context: {
        e: MouseEvent;
        next: number;
        current: number;
        total: number;
    }) => void;
    onPrevStepClick?: (context: {
        e: MouseEvent;
        prev: number;
        current: number;
        total: number;
    }) => void;
    onSkip?: (context: {
        e: MouseEvent;
        current: number;
        total: number;
    }) => void;
}, {
    zIndex: number;
    showOverlay: boolean;
    mode: "dialog" | "popup";
    highlightPadding: number;
    hideCounter: boolean;
    hidePrev: boolean;
    hideSkip: boolean;
}, true>);
export default _default;
