import { CSSProperties, ExtractPropTypes, PropType } from 'vue';
import { VueNode } from '../_util/type';
import { PlacementType } from './placements';
export declare const tourStepInfo: () => {
    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;
    };
};
export type TourStepInfo = Partial<ExtractPropTypes<ReturnType<typeof tourStepInfo>>>;
export declare const tourStepProps: () => {
    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;
    };
};
export type TourStepProps = Partial<ExtractPropTypes<ReturnType<typeof tourStepProps>>>;
