# `Wardrik.Event`

One event, as a CloudEvent.

`type` is like `"wardrik.run.completed"`. `data` follows the protocol's schema for that type.

# `t`

```elixir
@type t() :: %Wardrik.Event{
  data: term(),
  datacontenttype: term(),
  dataschema: term(),
  id: term(),
  parentspanid: term(),
  sequence: term(),
  source: term(),
  specversion: term(),
  subject: term(),
  time: term(),
  traceparent: term(),
  tracestate: term(),
  type: term()
}
```

# `from_json`

```elixir
@spec from_json(map()) :: t()
```

Builds one from the protocol's JSON.

# `to_json`

```elixir
@spec to_json(t()) :: map()
```

Returns it as the protocol's JSON, without fields that are `nil`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
