event() :: atom() | {:completed, atom()} | {:decision, atom(), atom()}
t() :: %ExState.Definition.Transition{ actions: [atom()], event: event(), reset: boolean(), target: String.t() | [String.t()] }