# `MingaEditor.Frontend.Manager.PendingFrame`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga_editor/frontend/manager/pending_frame.ex#L1)

Immutable encoded frame retained while frontend transport admission is unwritable.

# `t`

```elixir
@type t() :: %MingaEditor.Frontend.Manager.PendingFrame{
  base_frame_seq: non_neg_integer(),
  batch: binary(),
  frame_seq: non_neg_integer(),
  generation: non_neg_integer()
}
```

# `byte_size`

```elixir
@spec byte_size(t()) :: non_neg_integer()
```

Returns retained encoded bytes.

# `follows?`

```elixir
@spec follows?(t(), t()) :: boolean()
```

Returns whether this frame can follow an admitted predecessor without a missing base.

# `from_commands`

```elixir
@spec from_commands([binary()]) ::
  {:ok, t()}
  | {:error, MingaEditor.Frontend.FrameTransaction.validation_error()}
```

Builds retained frame metadata from one complete encoded transaction.

---

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