# `Snodo.Transport.Policy`
[🔗](https://github.com/joshrotenberg/snodo/blob/v0.1.0/lib/snodo/transport/policy.ex#L1)

Transport-neutral requirements declared by a protocol dialect.

# `mirror`

```elixir
@type mirror() :: %{
  :path =&gt; [String.t()],
  optional(:encoding) =&gt; :plain | :base64_sentinel
}
```

# `t`

```elixir
@type t() :: %Snodo.Transport.Policy{
  allow_batching?: boolean(),
  allow_session_id?: boolean(),
  allowed_methods: [String.t()],
  forbidden_headers: [String.t()],
  mirrored_headers: %{optional(String.t()) =&gt; mirror()},
  request_content_types: [String.t()],
  require_protocol_header?: boolean(),
  required_accept_types: [String.t()],
  required_headers: [String.t()],
  stream_mode: :none | :sse,
  tool_parameter_headers?: boolean()
}
```

---

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