/** * Fire-and-forget native OS notification. Used to make blocking moments * visible on the end machine (e.g. "approval required — open the console"), * because hook/gateway processes have no UI of their own and their stderr is * usually invisible inside IDEs. * * Never throws, never blocks the calling (hot) path: every platform variant * spawns a detached child and returns immediately. If the platform tooling is * missing (e.g. no notify-send on a headless Linux box) the notification is * silently dropped — it is a courtesy signal, not a delivery guarantee. */ export interface OsNotification { title: string; message: string; /** Optional URL. Platforms that support click-through open it; others append it to the body. */ url?: string; /** * Windows only: render a top-most alert WINDOW instead of a toast. Toasts are * silently suppressed by Focus Assist / Do-Not-Disturb, per-app banner * settings, and rapid-fire dedup — unacceptable for a security warning the * user MUST see. A plain window is not a notification, so none of that applies. */ forceWindow?: boolean; } /** Show a native OS notification. Best-effort, non-blocking, never throws. */ export declare function notifyOs(n: OsNotification): void; /** Console (dashboard) base URL for deep links in notifications and messages. */ export declare function consoleUrl(pathname?: string): string; /** Deep link to the approvals queue in the console. */ export declare function approvalsConsoleUrl(): string;