# FocusScopeDefinition

Source: /tuil/docs/reference/packages/focus/api/focus-scope-definition
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 FocusScopeDefinition {
  readonly id: string;
  readonly parentId?: string;
  readonly orientation?: "horizontal" | "vertical" | "grid";
  readonly loop?: boolean;
  readonly restoreFocus?: boolean;
  readonly trapped?: boolean;
}
```

## 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.                                  | —             |
| `orientation`  | `"horizontal" \| "vertical" \| "grid" \| undefined` | No       | The `orientation` member uses the `"horizontal" \| "vertical" \| "grid" \| undefined` contract. | —             |
| `loop`         | `boolean \| undefined`                              | No       | The `loop` member uses the `boolean \| undefined` contract.                                     | —             |
| `restoreFocus` | `boolean \| undefined`                              | No       | The `restoreFocus` member uses the `boolean \| undefined` contract.                             | —             |
| `trapped`      | `boolean \| undefined`                              | No       | The `trapped` 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]

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)
