Shared handoff lifecycle vocabulary.
@type t() :: String.t()
@spec transition_allowed?(t(), t()) :: boolean()
@spec valid?(term()) :: boolean()
@spec values() :: [t()]