import { Tooltip } from './../index';
import { Animation, TooltipArrowDirection, TooltipOpenMode, TooltipPosition } from './../index';
import { AfterViewInit, ElementRef, OnInit, OnChanges, OnDestroy, SimpleChanges, EventEmitter } from '@angular/core';
import { BaseElement } from './smart.element';
import * as i0 from "@angular/core";
export { Animation, TooltipArrowDirection, TooltipOpenMode, TooltipPosition, ElementRenderMode } from './../index';
export { Smart } from './smart.element';
export { Tooltip } from './../index';
export declare class TooltipComponent extends BaseElement implements OnInit, AfterViewInit, OnDestroy, OnChanges {
    constructor(ref: ElementRef<Tooltip>);
    private eventHandlers;
    nativeElement: Tooltip;
    /** @description Creates the component on demand.
     * @param properties An optional object of properties, which will be added to the template binded ones.
     */
    createComponent(properties?: {}): any;
    /** @description Sets or gets the animation mode. Animation is disabled when the property is set to 'none' */
    get animation(): Animation | string;
    set animation(value: Animation | string);
    /** @description Determines how to align the tooltip. */
    get align(): string;
    set align(value: string);
    /** @description Gets or sets whether a tooltip's arrow will be shown. */
    get arrow(): boolean;
    set arrow(value: boolean);
    /** @description Sets the position of the arrow. */
    get arrowDirection(): TooltipArrowDirection | string;
    set arrowDirection(value: TooltipArrowDirection | string);
    /** @description Gets or sets whether a tooltip's arrow will be shown. */
    get delay(): number;
    set delay(value: number);
    /** @description Enables or disables the tooltip. */
    get disabled(): boolean;
    set disabled(value: boolean);
    /** @description Sets an offset by X and Y. */
    get offset(): number[];
    set offset(value: number[]);
    /** @description Sets or gets the license which unlocks the product. */
    get license(): string;
    set license(value: string);
    /** @description Sets or gets the language. Used in conjunction with the property messages.  */
    get locale(): string;
    set locale(value: string);
    /** @description Callback, related to localization module.  */
    get localizeFormatFunction(): any;
    set localizeFormatFunction(value: any);
    /** @description Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property language.  */
    get messages(): any;
    set messages(value: any);
    /** @description Sets or gets the way of triggering the tooltip. */
    get openMode(): TooltipOpenMode | string;
    set openMode(value: TooltipOpenMode | string);
    /** @description Gets or sets the position of the tooltip. */
    get position(): TooltipPosition | string;
    set position(value: TooltipPosition | string);
    /** @description Sets the element which triggers the tooltip. */
    get selector(): string | HTMLElement;
    set selector(value: string | HTMLElement);
    /** @description Determines the theme. Theme defines the look of the element */
    get theme(): string;
    set theme(value: string);
    /** @description Sets custom tooltip template. */
    get tooltipTemplate(): any;
    set tooltipTemplate(value: any);
    /** @description If is set to true, the element cannot be focused. */
    get unfocusable(): boolean;
    set unfocusable(value: boolean);
    /** @description Sets or gets the widget's value. */
    get value(): string;
    set value(value: string);
    /** @description Sets or gets the visibility of the tooltip. */
    get visible(): boolean;
    set visible(value: boolean);
    /** @description This event is triggered when the tooltip is opened.
    *  @param event. The custom event. 	*/
    onOpen: EventEmitter<CustomEvent>;
    /** @description This event is triggered before the tooltip is opened. The event can be prevented via event.preventDefault().
    *  @param event. The custom event. 	*/
    onOpening: EventEmitter<CustomEvent>;
    /** @description This event is triggered when the tooltip is closed.
    *  @param event. The custom event. 	*/
    onClose: EventEmitter<CustomEvent>;
    /** @description This event is triggered before the tooltip is closed. The event can be prevented via event.preventDefault().
    *  @param event. The custom event. 	*/
    onClosing: EventEmitter<CustomEvent>;
    /** @description Closes smart-tooltip.
    */
    close(): void;
    /** @description Opens smart-tooltip.
    */
    open(): void;
    /** @description Toggles smart-tooltip.
    */
    toggle(): void;
    /** @description Clears the content of the Tooltip.
    */
    clear(): void;
    get isRendered(): boolean;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    /** @description Add event listeners. */
    private listen;
    /** @description Remove event listeners. */
    private unlisten;
    static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipComponent, "smart-tooltip, [smart-tooltip]", ["smart-tooltip"], { "animation": "animation"; "align": "align"; "arrow": "arrow"; "arrowDirection": "arrowDirection"; "delay": "delay"; "disabled": "disabled"; "offset": "offset"; "license": "license"; "locale": "locale"; "localizeFormatFunction": "localizeFormatFunction"; "messages": "messages"; "openMode": "openMode"; "position": "position"; "selector": "selector"; "theme": "theme"; "tooltipTemplate": "tooltipTemplate"; "unfocusable": "unfocusable"; "value": "value"; "visible": "visible"; }, { "onOpen": "onOpen"; "onOpening": "onOpening"; "onClose": "onClose"; "onClosing": "onClosing"; }, never>;
}
