• Type Parameters

    • I extends InitState

      init state function

    • T

      behavior

    Parameters

    • tag: string
    • interfaceGuard: undefined | InterfaceGuard
    • init: I
    • methods: T & ThisType<{
          self: T;
          state: StateResult<I>;
      }>
    • Optionaloptions: DefineKindOptions<{
          self: T;
          state: StateResult<I>;
      }>

    Returns ((...args: Parameters<I>) => Guarded<T>)

      • (...args): Guarded<T>
      • Parameters

        • Rest...args: Parameters<I>

        Returns Guarded<T>