# `Tinkex.Files.Reader`
[🔗](https://github.com/North-Shore-AI/tinkex/blob/v0.4.0/lib/tinkex/files/reader.ex#L1)

Synchronous helpers for reading file inputs and extracting metadata.

# `extract_filename`

```elixir
@spec extract_filename(Tinkex.Files.Types.file_content()) :: String.t() | nil
```

# `read_file_content`

```elixir
@spec read_file_content(Tinkex.Files.Types.file_content()) ::
  {:ok, binary()} | {:error, File.posix() | :invalid_file_content}
```

# `read_file_content!`

```elixir
@spec read_file_content!(Tinkex.Files.Types.file_content()) :: binary() | no_return()
```

---

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