# errors.TmuxServerRestartedError

- **Module:** errors
- **Package:** libtmux
- **Language:** TypeScript
- **Kind:** class
- **Source:** https://github.com/libtmux/libtmux-ts/blob/3fe1ca654b81b8cbf4a13b777a001a3298c87a6f/packages/libtmux/src/errors.ts#L417
- **Page:** https://libtmux.org/en/ts/latest/reference/errors-tmuxserverrestartederror/

A handle outlived the daemon that issued its id.

tmux numbers a restarted daemon's objects from the start, so `%1` from before
the restart names a pane that exists and belongs to somebody else. Raised
from two places for one reason: the local check, when an acquisition has
already seen the new daemon, and tmux itself, when it has not — the command
carries a condition on the daemon's pid and start time and takes a branch
that refuses instead of running.

`delivery` is always `not_started`: the whole point of the condition is that
a refused command never ran, so retrying against a fresh handle is safe.

## Example

```ts
try {
  await pane.kill();
} catch (error) {
  if (error instanceof TmuxServerRestartedError) {
    // Read the server again; this pane's id belongs to another daemon now.
  }
}
```

## Members

- `code` (attribute)
- `delivery` (attribute): How far the refused command got, which is nowhere.
- `constructor` (method)
