# `Snodo.Resource.Definition`
[🔗](https://github.com/joshrotenberg/snodo/blob/v0.1.0/lib/snodo/resource/definition.ex#L1)

Protocol-neutral definition of a direct resource or resource template.

# `kind`

```elixir
@type kind() :: :resource | :template
```

# `t`

```elixir
@type t() :: %Snodo.Resource.Definition{
  annotations: map(),
  completion_arguments: [String.t()],
  description: String.t() | nil,
  icons: [map()],
  kind: kind(),
  metadata: map(),
  mime_type: String.t() | nil,
  name: String.t(),
  size: non_neg_integer() | nil,
  title: String.t() | nil,
  uri: String.t() | nil,
  uri_template: String.t() | nil
}
```

---

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