import { IMessage } from '../types/models/message.model';
export interface MessageNotificationCallback {
    (message: IMessage, roomName: string, senderName: string, roomJID: string): void;
}
declare class MessageNotificationManager {
    private callbacks;
    private pending;
    private maxPending;
    private pendingTtlMs;
    private dedupeWindowMs;
    private recentlyDelivered;
    addCallback(callback: MessageNotificationCallback): () => void;
    getCallbackCount(): number;
    private flushPending;
    private buildDedupeKey;
    private shouldSkipDuplicate;
    showNotification(message: IMessage, roomName: string, senderName: string, roomJID: string): void;
}
export declare const messageNotificationManager: MessageNotificationManager;
export {};
