notification_allowed?/2 & notification_allowed?/3 must be provided
notification_allowed?(term | String.t | nil, Map.t | nil) :: boolean
notification_allowed?(term | String.t | nil, term | String.t | nil, Map.t | nil) :: boolean