lib/live_state/event.ex
defmodule LiveState.Event do
defstruct name: "", detail: %{}
@typedoc """
Represents a CustomEvent to be returned from a reply and dispatched on the client.
Fields:
* name: becomes the name of the CustomEvent to be dispatched
* detail: becomes the detail property (payload) of the CustomEvent. Not that because
events will be serialized as JSON, everything here must implement `Jason.Encoder`
"""
@type t :: %__MODULE__{name: String.t(), detail: map()}
end