# io.github.libtmux.scaladsl.Client

- **Module:** io.github.libtmux.scaladsl
- **Package:** io.github.libtmux:libtmux-scala_3
- **Language:** Scala
- **Kind:** typealias
- **Source:** https://github.com/libtmux/libtmux-java/blob/f56392b5d9bc7f1f9c1631842333fb90f3d82d40/libtmux-scala/src/main/scala/io/github/libtmux/scaladsl/Client.scala#L10
- **Page:** https://libtmux.org/en/scala/latest/reference/io-github-libtmux-scaladsl-client/

```
opaque type Client = JavaClient

object Client
```

A captured attached client, opaque over the Java handle. Every operation beyond equality is an extension, generated from the operation catalog or handwritten where the catalog marks it `WAIT`, `STREAM` or `LIFECYCLE`.

## Members

### Parent objects

- `session` (method): The session this client was attached to, if any.
- `server` (method): The server this client is connected to.

### Other members

- `asJava` (method): The underlying Java client. Opaque wrapping is free, so this never copies scope or state.
- `attachment` (method): What this client was looking at when captured.
- `detach` (method): Detaches this client, leaving whatever it was attached to running.
- `detachOthers` (method): Detaches every other client, leaving this one attached.
- `fetchAttachment` (method): Takes a new capture and returns what this client is looking at now.
- `given_CanEqual_Client_Client` (constant)
- `name` (method): The client's terminal name, which is how tmux addresses it.
- `redraw` (method): Asks tmux to redraw this client.
- `refresh` (method): Takes a new capture and returns this client as it is now.
- `switchTo` (method): Moves this client to another session.
