import { OnInit, OnChanges, SimpleChanges, OnDestroy, ElementRef, TemplateRef, Renderer2, ViewContainerRef, Injector, NgZone, ComponentFactoryResolver } from '@angular/core'; import { NbTiplayerComponent } from './tiplayer'; import { Placement } from '../util/position'; import { NbOverlayPositionService } from '../overlay/overlay-position.service'; import { DynamicComponentService } from '../overlay/dynamic-component.service'; export declare class NbTooltipDirective implements OnInit, OnChanges, OnDestroy { el: ElementRef; private renderer; private viewContainerRef; private injector; private ngZone; private componentFactoryResolver; private dynamicComponentService; private nbOverlayPositionService; /** * 提示框宽度 */ nbWidth: number; /** * 提示框高度 */ nbHeight: number; /** * 提示框 */ nbTooltipClass: string; /** * 提示框的内容 */ nbTooltip: string | TemplateRef; /** * 提示框位置信息,默认为目标元素的底部 * 可选值为 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | * 'bottom-right' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom' * @default bottom */ placement: Placement; /** * 浮层模式还是嵌入模式 * @default false */ embedded: boolean; /** * 提示框的触发事件类型 * 可选值为 'click' | 'hover' | 'focus' * @default hover */ trigger: string; /** * 是否有箭头 * @default false */ hasArrow: boolean; /** * 提示框主题色 * 可选值为 'default' | white' | 'pink' | 'yellow' * @default default */ nbTooltipTheme: string; private _content; private clickListener; private enterListener; private leaveListener; private focusListener; private blurListener; private tiplayerInstance; private positionStrategy; constructor(el: ElementRef, renderer: Renderer2, viewContainerRef: ViewContainerRef, injector: Injector, ngZone: NgZone, componentFactoryResolver: ComponentFactoryResolver, dynamicComponentService: DynamicComponentService, nbOverlayPositionService: NbOverlayPositionService); ngOnInit(): void; /** * 截获Tooltip内容的变化,重新渲染 * 仅支持Tooltip内容为 string 类型 */ ngOnChanges(changes: SimpleChanges): void; /** * 创建并显示Tooltip */ show(): void; /** * 隐藏Tooltip */ hide(): void; /** * 显示或隐藏Tooltip */ toggle(): void; /** * Tooltip是否显示 */ isTooltipVisible(): boolean; /** * 处理宿主元素上的点击 * @param { Event } event - click event */ _handleHostClick(event: any): void; /** * 打开一个宿主元素的提示时,动态创建一个提示框组件 * 根据是否为嵌入方式,决定创建在当前元素的container内还是挂载到body下面 */ _createTiplayer(): void; /** * 重新定位Tooltip */ needReposition(): void; ngOnDestroy(): void; /** * 处理body区域内的点击 */ handleBodyInteraction(): void; }