For example, if the script needs to see databases have two healthy copies and it has just seen a database change from two ...

For example, if the script needs to see databases have two healthy copies and it has just seen a database change from two healthy copies to one, it does not raise the event immediately.  It will continue to run its periodic check, and if this database remains at only one healthy copy for sufficient time it will raise the error event.  Likewise, if the database has changed from one healthy copy to two, the script does not raise the healthy event immediately, but will wait to see that it keeps the two healthy copies for some time before raising the event.