public static FsmEventConfig <TState, TEvent> JumpTo <TState, TEvent>(this FsmEventConfig <TState, TEvent> cfg,
                                                                       Func <FsmTriggerArgs <TState, TEvent>, TState> fn)
 {
     return(cfg.JumpTo(x => Task.FromResult(fn(x))));
 }
 public static FsmEventConfig <TState, TEvent> Enable <TState, TEvent>(this FsmEventConfig <TState, TEvent> cfg,
                                                                       Func <FsmTriggerArgs <TState, TEvent>, bool> fn)
 {
     return(cfg.Enable(x => Task.FromResult(fn(x))));
 }
 public static FsmEventConfig <TState, TEvent> JumpTo <TState, TEvent>(this FsmEventConfig <TState, TEvent> cfg,
                                                                       TState state)
 {
     return(cfg.JumpTo(x => Task.FromResult(state)));
 }
 public static FsmEventConfig <TState, TEvent> Execute <TState, TEvent>(this FsmEventConfig <TState, TEvent> cfg,
                                                                        Func <FsmTriggerArgs <TState, TEvent>, object> fn)
 {
     return(cfg.Execute(x => Task.FromResult(fn(x))));
 }