code: public StateConfiguration<S, T> permitInternalIf(T trigger, FuncBoolean guard, Action action) {
          assert guard != null : GUARD_IS_NULL;
          assert action != null : ACTION_IS_NULL;
          representation.addTriggerBehaviour(new InternalTriggerBehaviour<S, T>(
                  trigger, guard, action));
          return this;
      }
docs: Accept the specified trigger, execute action and stay in state
  <p>
  Applies to the current state only. No exit or entry actions will be
  executed and the state will not change. The only thing that happens is
  the execution of a given action.
  <p>
  The action is only executed if the given guard returns true. Otherwise
  this transition will not be taken into account (so it does not count
  as 'ignore', then).
  
  @param trigger The accepted trigger
  @param guard   Function that must return true in order for the trigger to be accepted
  @param action  The action to be performed
  @return The receiver