import { ExtractPropTypes } from 'vue'; import { ISharedRenderlessFunctionParams } from './shared.type.js'; import * as _opentiny_utils_src_debounce from '@opentiny/utils/src/debounce'; declare const tooltipProps: { visible: { type: StringConstructor; default: () => string; validator: (value: string) => boolean; }; adjustArrow: { type: BooleanConstructor; default: () => boolean; }; appendToBody: { type: BooleanConstructor; default: () => boolean; }; arrowOffset: { type: NumberConstructor; default: () => number; }; content: { type: (StringConstructor | ObjectConstructor)[]; }; disabled: { type: BooleanConstructor; }; enterable: { type: BooleanConstructor; default: () => boolean; }; hideAfter: { type: NumberConstructor; default: () => number; }; manual: { type: BooleanConstructor; }; modelValue: { type: BooleanConstructor; }; offset: { default: () => number; }; effect: { type: StringConstructor; default: () => string; }; openDelay: { type: NumberConstructor; default: () => number; }; closeDelay: { type: NumberConstructor; default: () => number; }; placement: { type: StringConstructor; default: () => string; }; popper: {}; popperClass: { type: StringConstructor; }; popperOptions: { default: () => {}; }; pre: { type: BooleanConstructor; }; reference: {}; renderContent: { type: FunctionConstructor; }; tabindex: { type: NumberConstructor; default: () => number; }; transition: { type: StringConstructor; default: () => string; }; type: { type: StringConstructor; validator: (value: string) => boolean; }; visibleArrow: { type: BooleanConstructor; default: () => boolean; }; genArrowByHtml: { type: BooleanConstructor; default: () => boolean; }; zIndex: { type: StringConstructor; default: () => string; }; contentMaxHeight: { type: StringConstructor; default: () => string; }; tiny_mode: StringConstructor; tiny_mode_root: BooleanConstructor; tiny_template: (FunctionConstructor | ObjectConstructor)[]; tiny_renderless: FunctionConstructor; tiny_theme: StringConstructor; tiny_mcp_config: ObjectConstructor; tiny_chart_theme: ObjectConstructor; }; declare const show: ({ api, state, props }: Pick) => (event?: MouseEvent) => void; declare const hide: (api: ITooltipApi) => () => void; declare const handleFocus: ({ api, state }: Pick) => () => void; declare const handleBlur: ({ api, state }: Pick) => () => void; declare const removeFocusing: ({ api, state }: Pick) => () => void; declare const handleShowPopper: ({ props, state }: Pick) => (delay: number) => void; declare const handleClosePopper: ({ api, props, state }: Pick) => () => void; declare const handleDocumentClick: ({ props, api, state, popperVmRef }: Pick) => (event: MouseEvent) => void; declare const setExpectedState: ({ state }: Pick) => (value: boolean) => void; declare const destroyed: ({ state, api, vm }: Pick) => () => void; declare const debounceClose: ({ api, props }: Pick) => _opentiny_utils_src_debounce.DebounceFunction; declare const watchFocusing: (state: ITooltipState) => (value: boolean) => void; declare const focusHandler: ({ slots, api }: Pick) => () => void; declare const bindEvent: ({ api, state, vm }: Pick) => (reference: HTMLElement) => void; declare const observeCallback: ({ state, popperVmRef }: Pick) => (mutationsList: any) => void; declare const bindPopper: ({ vm, nextTick, popperVmRef }: Pick) => (el?: Element) => void; type ITooltipProps = ExtractPropTypes; interface ITooltipState { showPopper: boolean; popperElm: HTMLElement; referenceElm: HTMLElement; timeout: number; timeoutPending: number; focusing: boolean; expectedState: boolean; tooltipId: string; tabindex: number; xPlacement: string; showContent: boolean; tipsMaxWidth: string | number; } interface ITooltipApi { state: ITooltipState; observer: MutationObserver; doDestroy: (forceDestroy?: boolean | undefined) => void; updatePopper: (popperElm?: HTMLElement | undefined) => void; show: ReturnType; hide: ReturnType; destroyed: ReturnType; bindPopper: ReturnType; watchFocusing: ReturnType; removeFocusing: ReturnType; handleBlur: ReturnType; handleFocus: ReturnType; debounceClose: ReturnType; setExpectedState: ReturnType; handleShowPopper: ReturnType; handleClosePopper: ReturnType; bindEvent: ReturnType; focusHandler: ReturnType; handleDocumentClick: ReturnType; observeCallback: ReturnType; } type ITooltipRenderlessParams = ISharedRenderlessFunctionParams & { props: ITooltipProps; state: ITooltipState; api: ITooltipApi; popperVmRef: { popper: HTMLElement; }; }; export { ITooltipApi, ITooltipProps, ITooltipRenderlessParams, ITooltipState };