# FocusNode

Source: /tuil/docs/reference/packages/focus/api/focus-node
Locale: en

interface exported by @mwillbanks/tuil-focus.



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

## interface [#interface]

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

```ts
export interface FocusNode {
  readonly id: string;
  readonly parentId?: string;
  readonly scopeId?: string;
  readonly disabled: boolean;
  readonly hidden: boolean;
  readonly order: number;
  readonly role?: string;
  readonly label?: string;
  readonly bounds?: TerminalBounds;
}
```

## Members [#members]

| Member     | Type                          | Required | Description                                                          | Related types                                                         |
| ---------- | ----------------------------- | -------- | -------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `id`       | `string`                      | Yes      | The `id` member uses the `string` contract.                          | —                                                                     |
| `parentId` | `string \| undefined`         | No       | The `parentId` member uses the `string \| undefined` contract.       | —                                                                     |
| `scopeId`  | `string \| undefined`         | No       | The `scopeId` member uses the `string \| undefined` contract.        | —                                                                     |
| `disabled` | `boolean`                     | Yes      | The `disabled` member uses the `boolean` contract.                   | —                                                                     |
| `hidden`   | `boolean`                     | Yes      | The `hidden` member uses the `boolean` contract.                     | —                                                                     |
| `order`    | `number`                      | Yes      | The `order` member uses the `number` contract.                       | —                                                                     |
| `role`     | `string \| undefined`         | No       | The `role` member uses the `string \| undefined` contract.           | —                                                                     |
| `label`    | `string \| undefined`         | No       | The `label` member uses the `string \| undefined` contract.          | —                                                                     |
| `bounds`   | `TerminalBounds \| undefined` | No       | The `bounds` member uses the `TerminalBounds \| undefined` contract. | [`TerminalBounds`](/tuil/docs/reference/packages/core/api/terminal-bounds) |

## 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]

No package-local related types.

## Source [#source]

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

## Package [#package]

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