import { Injector, OnDestroy, OnInit } from '@angular/core';
import { User } from '../../models/user';
import { TooltipPosition } from '@angular/material/tooltip';
import { Subscription } from 'rxjs';
import { AbstractNavigationResizableDrawerComponent } from '../../../navigation/navigation-drawer/abstract-navigation-resizable-drawer.component';
import * as i0 from "@angular/core";
export type Mode = 'full' | 'horizontal' | 'vertical' | 'icon';
export type IconStyle = 'large' | 'small';
export declare abstract class AbstractUserCardComponent extends AbstractNavigationResizableDrawerComponent implements OnInit, OnDestroy {
    protected _injector: Injector;
    user: User;
    mode: Mode;
    tooltipPosition: TooltipPosition;
    iconStyle: IconStyle;
    link: string;
    protected subUser: Subscription;
    constructor(_injector: Injector);
    ngOnInit(): void;
    ngOnDestroy(): void;
    userBannerExists(): boolean;
    get userBanner(): string;
    get userAvatar(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<AbstractUserCardComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AbstractUserCardComponent, "ncc-abstract-user-card", never, { "user": { "alias": "user"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; }; "iconStyle": { "alias": "iconStyle"; "required": false; }; "link": { "alias": "link"; "required": false; }; }, {}, never, never, false, never>;
}
