import { AnimationEvent } from '@angular/animations';
import { ChangeDetectorRef, ElementRef, OnDestroy, TemplateRef } from '@angular/core';
import { Observable, Subject, BehaviorSubject } from 'rxjs';
import { Bem } from '../internal/utils';
import { AnimationType } from './animations';
import { TooltipType } from './tooltip.types';
import * as i0 from "@angular/core";
export declare class TooltipComponent implements OnDestroy {
    elRef: ElementRef<HTMLElement>;
    cdr: ChangeDetectorRef;
    text: string;
    template: TemplateRef<any>;
    bem: Bem;
    showHide: string;
    animationType: AnimationType;
    inputContent$: Observable<TemplateRef<any> | string>;
    inputType$: Observable<TooltipType>;
    inputPosition$: Observable<string>;
    inputClass$: Observable<string>;
    inputContext$: Observable<any>;
    text$: Observable<string>;
    template$: Observable<TemplateRef<any>>;
    class$: Observable<string>;
    context$: Observable<any>;
    hover$: Subject<boolean>;
    destroy$: Subject<unknown>;
    animating$$: BehaviorSubject<boolean>;
    hide$: Subject<unknown>;
    beforeHide$: Subject<unknown>;
    beforeShow$: Subject<unknown>;
    constructor(elRef: ElementRef<HTMLElement>, cdr: ChangeDetectorRef);
    ngOnDestroy(): void;
    setupInputs(inputs: {
        inputContent$: Observable<TemplateRef<any> | string>;
        inputType$: Observable<TooltipType>;
        inputPosition$: Observable<string>;
        inputClass$: Observable<string>;
        inputContext$: Observable<any>;
        animationType?: string;
    }): void;
    onAnimation(event: AnimationEvent): void;
    show(): void;
    hide(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "aui-tooltip", never, {}, {}, never, never, true, never>;
}
