# TerminalCapabilities

Source: /tuil/docs/reference/packages/core/api/terminal-capabilities
Locale: en

interface exported by @mwillbanks/tuil-core.



{/* Generated by tooling/docs/generate-reference.ts. */}

## interface [#interface]

Public interface exported by `@mwillbanks/tuil-core`.

```ts
export interface TerminalCapabilities {
  readonly width: number;
  readonly height: number;
  readonly colorDepth: ColorDepth;
  readonly unicode: boolean;
  readonly hyperlinks: boolean;
  readonly interactive: boolean;
  readonly tty: boolean;
  readonly alternateScreen: boolean;
  readonly mouse: boolean;
  readonly images: boolean;
  readonly reducedMotion: boolean;
  readonly platform: TerminalPlatform;
  readonly bracketedPaste?: boolean;
  readonly clipboard?: "osc52" | "platform" | "none";
  readonly focusReporting?: boolean;
  readonly kittyKeyboard?: boolean;
  readonly notifications?: boolean;
}
```

## Members [#members]

| Member            | Type                                           | Required | Description                                                                              | Related types                                                             |
| ----------------- | ---------------------------------------------- | -------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| `width`           | `number`                                       | Yes      | The `width` member uses the `number` contract.                                           | —                                                                         |
| `height`          | `number`                                       | Yes      | The `height` member uses the `number` contract.                                          | —                                                                         |
| `colorDepth`      | `ColorDepth`                                   | Yes      | The `colorDepth` member uses the `ColorDepth` contract.                                  | [`ColorDepth`](/tuil/docs/reference/packages/core/api/color-depth)             |
| `unicode`         | `boolean`                                      | Yes      | The `unicode` member uses the `boolean` contract.                                        | —                                                                         |
| `hyperlinks`      | `boolean`                                      | Yes      | The `hyperlinks` member uses the `boolean` contract.                                     | —                                                                         |
| `interactive`     | `boolean`                                      | Yes      | The `interactive` member uses the `boolean` contract.                                    | —                                                                         |
| `tty`             | `boolean`                                      | Yes      | The `tty` member uses the `boolean` contract.                                            | —                                                                         |
| `alternateScreen` | `boolean`                                      | Yes      | The `alternateScreen` member uses the `boolean` contract.                                | —                                                                         |
| `mouse`           | `boolean`                                      | Yes      | The `mouse` member uses the `boolean` contract.                                          | —                                                                         |
| `images`          | `boolean`                                      | Yes      | The `images` member uses the `boolean` contract.                                         | —                                                                         |
| `reducedMotion`   | `boolean`                                      | Yes      | The `reducedMotion` member uses the `boolean` contract.                                  | —                                                                         |
| `platform`        | `TerminalPlatform`                             | Yes      | The `platform` member uses the `TerminalPlatform` contract.                              | [`TerminalPlatform`](/tuil/docs/reference/packages/core/api/terminal-platform) |
| `bracketedPaste`  | `boolean \| undefined`                         | No       | The `bracketedPaste` member uses the `boolean \| undefined` contract.                    | —                                                                         |
| `clipboard`       | `"osc52" \| "platform" \| "none" \| undefined` | No       | The `clipboard` member uses the `"osc52" \| "platform" \| "none" \| undefined` contract. | —                                                                         |
| `focusReporting`  | `boolean \| undefined`                         | No       | The `focusReporting` member uses the `boolean \| undefined` contract.                    | —                                                                         |
| `kittyKeyboard`   | `boolean \| undefined`                         | No       | The `kittyKeyboard` member uses the `boolean \| undefined` contract.                     | —                                                                         |
| `notifications`   | `boolean \| undefined`                         | No       | The `notifications` member uses the `boolean \| undefined` contract.                     | —                                                                         |

## Parameters [#parameters]

This declaration has no public members.

## Returns [#returns]

This declaration does not return a value.

## Throws [#throws]

No thrown errors are documented for this declaration.

## Related types [#related-types]

* [`ColorDepth`](/tuil/docs/reference/packages/core/api/color-depth)
* [`TerminalPlatform`](/tuil/docs/reference/packages/core/api/terminal-platform)

## Source [#source]

[View the secondary source reference](https://github.com/mwillbanks/tuil/blob/main/packages/core/src/terminal.ts)

## Package [#package]

[@mwillbanks/tuil-core](/tuil/docs/reference/packages/core)
