import '../../ui/kit/kit.js';
import * as Badges from '../../models/badges/badges.js';
import * as UI from '../../ui/legacy/legacy.js';
import { type LitTemplate } from '../../ui/lit/lit.js';
export interface BadgeNotificationAction {
    label: string;
    jslogContext: string;
    title?: string;
    onClick: () => void;
}
export interface BadgeNotificationProperties {
    message: LitTemplate;
    jslogContext: string;
    imageUri: string;
    actions: BadgeNotificationAction[];
    isStarterBadge: boolean;
}
export interface ViewInput extends BadgeNotificationProperties {
    onDismissClick: () => void;
}
declare const DEFAULT_VIEW: (input: ViewInput, _output: undefined, target: HTMLElement) => void;
type View = typeof DEFAULT_VIEW;
export declare class BadgeNotification extends UI.Widget.Widget {
    #private;
    jslogContext: string;
    message: LitTemplate;
    imageUri: string;
    actions: BadgeNotificationAction[];
    isStarterBadge: boolean;
    constructor(element?: HTMLElement, view?: View);
    present(badge: Badges.Badge, reason: Badges.BadgeTriggerReason): Promise<void>;
    onDetach(): void;
    wasShown(): void;
    performUpdate(): void;
}
export {};
