Rezi
    Preparing search index...

    Type Alias UiEvent

    UiEvent:
        | Readonly<{ event: ZrevEvent; kind: "engine" }>
        | Readonly<{ kind: "action" } & RoutedAction>
        | Readonly<
            { droppedBatches: number; engineTruncated: boolean; kind: "overrun" },
        >
        | Readonly<{ code: string; detail: string; kind: "fatal" }>

    Events emitted by the app runtime to registered handlers.

    For each decoded ZREV event:

    1. The app MUST emit { kind: "engine", event }.
    2. The runtime MUST apply focus/routing rules.
    3. If routing produces a user action, the app MUST emit { kind: "action", ... } immediately after the corresponding engine event.