# `Kreuzberg.ArchiveEntry`
[🔗](https://github.com/kreuzberg-dev/kreuzberg/blob/main/lib/kreuzberg/archive_entry.ex#L1)

Structure representing an entry extracted from an archive file.

Matches the Rust `ArchiveEntry` struct.

## Fields

  * `:path` - The path of the entry within the archive
  * `:mime_type` - The MIME type of the entry content
  * `:result` - The extraction result for this entry

# `t`

```elixir
@type t() :: %Kreuzberg.ArchiveEntry{
  mime_type: String.t(),
  path: String.t(),
  result: map() | nil
}
```

# `from_map`

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

Creates an ArchiveEntry struct from a map.

## Examples

    iex> Kreuzberg.ArchiveEntry.from_map(%{
    ...>   "path" => "document.pdf",
    ...>   "mime_type" => "application/pdf",
    ...>   "result" => %{"content" => "text"}
    ...> })
    %Kreuzberg.ArchiveEntry{
      path: "document.pdf",
      mime_type: "application/pdf",
      result: %{"content" => "text"}
    }

# `to_map`

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

Converts an ArchiveEntry struct to a map.

## Examples

    iex> entry = %Kreuzberg.ArchiveEntry{path: "doc.pdf", mime_type: "application/pdf"}
    iex> Kreuzberg.ArchiveEntry.to_map(entry)
    %{
      "path" => "doc.pdf",
      "mime_type" => "application/pdf",
      "result" => nil
    }

---

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