Fox Events Fox Events

EventMap

Typed static API with Fox.emit<AppEvents>, Fox.on<AppEvents>, Fox.once<AppEvents>.

Table of contents

Define Event Map

ts
type AppEvents = {
  "user:login": { userId: string };
  "app:ready": { version: string };
  "user:logout": void;
};

Typed Emit

ts
Fox.emit<AppEvents>("user:login", { userId: "u-1" });
Fox.emit<AppEvents>("app:ready", { version: "1.0" });

Typed On

ts
Fox.on<AppEvents>("user:login", (payload) => {
  payload.userId;
});

Typed Once

ts
const payload = await Fox.once<AppEvents>("user:login");