/** * schema-domain-push.ts, browser push subscription custody (`push.*`). * * These are the knobs over the daemon's `push-subscriptions.json`: the contact * a push service can reach the operator on, how many registered devices per * operator is worth mentioning, when a push service has proved an endpoint * dead, and how often housekeeping runs. * * The load-bearing thing to know about this domain, and the reason * `warnAbovePerPrincipal` is a warning and not a cap: a device is removed only * on EVIDENCE that it is already dead. No count and no amount of quiet ever * removes a subscription that still works, because doing so would silently stop * notifications on a device nobody unsubscribed and the operator would have to * resubscribe to find out. */ import type { ConfigSettingDefinition } from './schema-shared.js'; /** Browser-push configuration (`push.*`). */ export interface PushConfig { /** * Contact a push service uses to report a delivery problem, the VAPID JWT's * `sub` claim. Empty means the built-in localhost fallback. */ vapidSubject: string; subscriptions: { warnAbovePerPrincipal: number; failureThreshold: number; sweepIntervalMinutes: number; }; } declare module './schema-types.js' { interface GoodVibesConfig { push: PushConfig; } } export declare const pushConfigDefaults: { push: PushConfig; }; export declare const pushConfigSettings: ConfigSettingDefinition[]; //# sourceMappingURL=schema-domain-push.d.ts.map