import * as _angular_core from '@angular/core';
import { OnDestroy } from '@angular/core';
/**
* Values accepted by `Toolltip`'s `talenraTooltipPosition` property. Determines the position of the tooltip relative to
* the hosting element.
*
* ```html
* Hover me
* ```
*
* ### Import
*
* ```typescript
* import { TooltipPosition } from '@talenra/ngx-base/tooltip';
* ```
*
* @see {@link TooltipDirective}
*/
declare const TooltipPosition: {
readonly South: "south";
readonly West: "west";
readonly North: "north";
readonly East: "east";
};
/**
* Type of values accepted by `Toolltip`'s `talenraTooltipPosition` property.
*
* ### Import
*
* ```typescript
* import { TTooltipPosition } from '@talenra/ngx-base/tooltip';
* ```
*
* @see {@link TooltipDirective}
*/
type TTooltipPosition = (typeof TooltipPosition)[keyof typeof TooltipPosition];
/**
* Tooltip provides an explanatory text which is displayed when the hosting element is hovered. By default the Tooltip
* is displayed below the hosting element (south). The preferred position can be changed (s. {@link #position|talenraTooltipPosition}). If
* space is limited, position is adjusted automatically.
*
* ```html
* Hover me
* ```
*
* ### Import
*
* ```typescript
* import { TooltipDirective } from '@talenra/ngx-base/tooltip';
* ```
*
* ../../#/tooltip
*/
declare class TooltipDirective implements OnDestroy {
/**
* Text displayed in Tooltip.
*
* ```html
* Hover me
* ```
*/
text: _angular_core.InputSignal;
/**
* The Tooltip's position relative to the hosting element ('north', 'east', …). Defaults to 'south'.
*
* ```html
* Hover me
* ```
*
* @see {@link TooltipPosition}
*/
position: _angular_core.InputSignal;
/**
* Determines whether Tooltip is displayed when the hosting element is hovered. Use this property to conditionally
* de-/activate a Tooltip (e.g. based on the app's state, user interaction or content).
*
* ```html
* Hover me
* ```
*/
disabled: _angular_core.InputSignalWithTransform;
/** The Material CDK Overlay reference. It is used to create/display and destroy the tooltip. */
private overlayRef;
/** TooltipComponent instance displayes in the overlay */
private tooltipInstance?;
/** Timeout id used to detach after fade-out transition has completed */
private detachTimeoutId?;
private elementRef;
private overlay;
/** @internal */
ngOnDestroy(): void;
/** Returns the position strategy based on the position input. */
private getPositionStrategy;
/** Handler for focus events. Shows Tooltip unless it is already visible (includes fade-out in progress). */
private handleFocus;
/** Creates the overlay */
private createOverlay;
/** Fade in tooltip, create it if not existing */
private show;
/** Fade out and detach tooltip */
private hide;
/** Detach tooltip immediately */
private detach;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵdir: _angular_core.ɵɵDirectiveDeclaration;
}
export { TooltipDirective, TooltipPosition };
export type { TTooltipPosition };