This method allows you to get all transition information. This allows you to build
tooling where you can access all guard and transition logic and check that (via a rule)
or execute that (via commands) on an domain object (which you can build via a factory and a custom entity builder).
This is highly useful if you have failed transitions (eg: because a 3d party service
was temporarily down) and only want to execute a specific piece of logic independently.
Just instantiate the rule or command associated with the state logic with the domain object
injected in the constructor. You can then check if a domain object/statemachine is allowed
to transition (via the rule, with optional output from the rule via Rule::addResult) or execute a command
associated with that transition.