Skip to main content
Module

x/xstate/src/assert.ts>assertEvent

Actor-based state management & orchestration for complex app logic.
Latest
function assertEvent
import { assertEvent } from "https://deno.land/x/xstate@xstate%405.12.0/src/assert.ts";

Asserts that the given event object is of the specified type or types. Throws an error if the event object is not of the specified types.

Examples

Example 1

  // ...
  entry: ({ event }) => {
    assertEvent(event, 'doNothing');
    // event is { type: 'doNothing' }
  },
  // ...
  exit: ({ event }) => {
    assertEvent(event, 'greet');
    // event is { type: 'greet'; message: string }

    assertEvent(event, ['greet', 'notify']);
    // event is { type: 'greet'; message: string }
    // or { type: 'notify'; message: string; level: 'info' | 'error' }
  },

Type Parameters

TEvent extends EventObject
TAssertedType extends TEvent["type"]

Returns

asserts event is TEvent & { type: TAssertedType; }