import { AbstractUiComponent } from "./AbstractUiComponent";
import { TeamAppsUiContext } from "./TeamAppsUiContext";
import { TeamAppsEvent } from "./util/TeamAppsEvent";
import { UiNotificationBar_ItemActionLinkClickedEvent, UiNotificationBar_ItemClickedEvent, UiNotificationBar_ItemClosedEvent, UiNotificationBarCommandHandler, UiNotificationBarConfig, UiNotificationBarEventSource } from "../generated/UiNotificationBarConfig";
import { UiNotificationBarItemConfig } from "../generated/UiNotificationBarItemConfig";
import { UiExitAnimation } from "../generated/UiExitAnimation";
export declare class UiNotificationBar extends AbstractUiComponent<UiNotificationBarConfig> implements UiNotificationBarCommandHandler, UiNotificationBarEventSource {
    readonly onItemClicked: TeamAppsEvent<UiNotificationBar_ItemClickedEvent>;
    readonly onItemActionLinkClicked: TeamAppsEvent<UiNotificationBar_ItemActionLinkClickedEvent>;
    readonly onItemClosed: TeamAppsEvent<UiNotificationBar_ItemClosedEvent>;
    private $main;
    private itemsById;
    constructor(config: UiNotificationBarConfig, context: TeamAppsUiContext);
    doGetMainElement(): HTMLElement;
    addItem(itemConfig: UiNotificationBarItemConfig): void;
    updateItem(itemConfig: UiNotificationBarItemConfig): any;
    removeItem(id: string, exitAnimation?: UiExitAnimation): void;
}
