import { type NotificationPrefs, type QuietHours } from "../../schemas/notification-prefs.schema"; /** The push kinds a preference can gate. */ export type PushEvent = "waitingInput" | "sessionFailed"; /** * Read a stored preference blob. * * NULL and anything that no longer parses both come back `null`, which the send * path treats as "everything on". Failing open is deliberate: a corrupt row * must not silently mute the one notification the user is waiting for. */ export declare function parseStoredPrefs(raw: string | null): NotificationPrefs | null; /** * Is `now` inside the user's quiet hours? * * A window that ends earlier than it starts runs overnight and belongs to the * day it starts on: Friday 22:00–08:00 covers Saturday until 08:00 and uses * Friday's entry, not Saturday's. `from === to` is an empty window, not 24h — * "always quiet" is what turning the notification off is for. */ export declare function isQuietNow(qh: QuietHours, now: Date): boolean; /** Should a push of this kind reach a device with these preferences right now? */ export declare function allows(prefs: NotificationPrefs | null, event: PushEvent, now: Date): boolean; //# sourceMappingURL=notificationPrefs.d.ts.map