import type { MeshDeliveryStage, MeshReceiptKind } from "./mesh-chat.js"; export type NotificationUrgency = "low" | "default" | "high" | "critical"; export type NotificationAudience = "device" | "account" | "broadcast"; export type NotificationStatus = "queued" | "sent" | "delivered" | "read" | "expired"; export interface NotificationAnnouncement { profile: "mesh.notification.v1"; recipientId: string; senderId: string; notificationId: string; urgency: NotificationUrgency; audience: NotificationAudience; objectPath: string; collapseKey?: string | null; expiresAtMs?: number; } export declare function notificationStreamId(recipientId: string): string; export declare function notificationAnnouncementTopic(recipientId: string): string; export declare function notificationReceiptTopic(recipientId: string): string; export declare function notificationObjectPath(recipientId: string, senderId: string, notificationId: string): string; export declare function createNotificationAnnouncement(recipientId: string, senderId: string, notificationId: string, urgency: NotificationUrgency, options?: { audience?: NotificationAudience; collapseKey?: string | null; expiresAtMs?: number; }): NotificationAnnouncement; export declare function notificationStatusFromMesh(stage: MeshDeliveryStage, options?: { expired?: boolean; receiptKind?: MeshReceiptKind; }): NotificationStatus; //# sourceMappingURL=mesh-notification.d.ts.map