import type { CSSProperties, Component, InjectionKey, Ref, SetupContext } from 'vue'; import type { UseNamespaceReturn } from 'element-plus/es/hooks'; import type { TourGap, TourMask } from './types'; import type { Placement, Strategy, VirtualElement } from '@floating-ui/dom'; import type { TourStepProps } from './step'; export declare const useTarget: (target: Ref HTMLElement | null) | null | undefined>, open: Ref, gap: Ref, mergedMask: Ref, scrollIntoViewOptions: Ref) => { mergedPosInfo: import("vue").ComputedRef<{ left: number; top: number; width: number; height: number; radius: number; } | null>; triggerTarget: import("vue").ComputedRef; }; export interface TourContext { currentStep: Ref; current: Ref; total: Ref; showClose: Ref; closeIcon: Ref; mergedType: Ref<'default' | 'primary' | undefined>; ns: UseNamespaceReturn; slots: SetupContext['slots']; updateModelValue(modelValue: boolean): void; onClose(): void; onFinish(): void; onChange(): void; } export declare const tourKey: InjectionKey; export declare const useFloating: (referenceRef: Ref, contentRef: Ref, arrowRef: Ref, placement: Ref, strategy: Ref, offset: Ref, zIndex: Ref, showArrow: Ref) => { update: () => Promise; contentStyle: import("vue").ComputedRef; arrowStyle: import("vue").ComputedRef; };