# TypingContext

`TypingContext` is provided by [`Channel`](/chat/docs/sdk/react-native/v8/core-components/channel/). If you are not familiar with the React Context API, see the [React docs](https://reactjs.org/docs/context.html).

## Best Practices

- Use `useTypingContext` for consistent access and typings.
- Treat `typing` as read-only UI state.
- Avoid heavy computations on the typing map during render.
- Consider disabling typing indicators in high-volume channels.
- Keep typing UI subtle and non-intrusive.

## Basic Usage

Consume `TypingContext` in any child of `Channel`:

```tsx
import { useContext } from "react";
import { TypingContext } from "stream-chat-react-native";

const { typing } = useContext(TypingContext);
```

Alternatively, use the `useTypingContext` hook.

```tsx
import { useTypingContext } from "stream-chat-react-native";

const { typing } = useTypingContext();
```

## Value

### typing

A map of `typing.start` [event objects](/chat/docs/javascript/event_object/) keyed by user ID, for users currently typing.

| Type   |
| ------ |
| object |


---

This page was last updated at 2026-04-17T17:33:45.028Z.

For the most recent version of this documentation, visit [https://getstream.io/chat/docs/sdk/react-native/v8/contexts/typing-context/](https://getstream.io/chat/docs/sdk/react-native/v8/contexts/typing-context/).