import { OnInit } from '@angular/core';
import { FocusableItem, Nullable } from '@fundamental-ngx/cdk/utils';
import { Observable } from 'rxjs';
import { AvatarGroupItemDirective } from './avatar-group-item.directive';
import * as i0 from "@angular/core";
export declare class AvatarGroupItemRendererDirective implements OnInit, FocusableItem {
    /**
     * Avatar group item to be rendered.
     **/
    avatarGroupItem: AvatarGroupItemDirective;
    /**
     * Whether the item should be forced to be visible.
     **/
    forceVisibility: boolean;
    /**
     * HTML element of the item.
     **/
    element$: Observable<Nullable<HTMLElement>>;
    /** @hidden */
    keydown: Observable<KeyboardEvent>;
    /**
     * Whether the item is visible.
     **/
    get visible(): boolean;
    /**
     * Currently rendered element's HTMLElement.
     **/
    get element(): HTMLElement;
    /**
     * Rendered element's width or it's last saved width.
     **/
    get width(): number;
    /**
     * Rendered element's height or it's last saved height.
     **/
    get height(): number;
    /** @hidden */
    private _portalOutlet;
    /** @hidden */
    private _viewContainerRef;
    /**
     * @hidden
     **/
    private _element$;
    /** @hidden */
    private _templatePortal?;
    /** @hidden */
    private _isFocusable;
    /** @hidden */
    private _embeddedViewRef;
    /** @hidden */
    private _lastSavedWidth;
    /** @hidden */
    private _lastSavedHeight;
    /** @hidden */
    private _hostConfig;
    /** @hidden */
    constructor();
    /** @hidden */
    ngOnInit(): void;
    /**
     * Hides the item.
     **/
    hide(): void;
    /**
     * Shows the item.
     **/
    show(): void;
    /**
     * Whether the item is focusable.
     **/
    isFocusable: () => boolean;
    /**
     * Sets the tabbable state of the item.
     **/
    setTabbable(tabbable: boolean): void;
    /** @hidden */
    focus(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AvatarGroupItemRendererDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<AvatarGroupItemRendererDirective, "[fdAvatarGroupItemPortal]", ["fdAvatarGroupItemPortal"], { "avatarGroupItem": { "alias": "avatarGroupItem"; "required": false; }; "forceVisibility": { "alias": "forceVisibility"; "required": false; }; }, {}, never, never, true, never>;
}
