A single notice waiting for user action.
Immutable value object: the registry owns the
key-to-toast-identity binding (see NotificationRegistry) so
external callers cannot corrupt click-routing indices by mutating
notifications after construction.
Stable identifier used to dedupe and to remove the notice once handled.
One-line heading shown in the modal.
Longer description shown below the title.
May contain install instructions, links, or version info.
Available actions, rendered as rows in the modal.
Kind-specific typed data consumed by the action dispatcher.