# TerminalScrollAreaOptions

Source: /tuil/docs/reference/packages/ink/api/terminal-scroll-area-options
Locale: en

interface exported by @mwillbanks/tuil-ink.



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

## interface [#interface]

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

```ts
export interface TerminalScrollAreaOptions {
  readonly id: string;
  readonly viewport: ScrollViewport;
  readonly extent: ScrollExtent;
  readonly parentId?: string;
  readonly sticky?: Partial<
    Record<"top" | "bottom" | "left" | "right", boolean>
  >;
  readonly followFocus?: boolean;
  readonly enabled?: boolean;
  readonly initialPosition?: {
    readonly x?: number;
    readonly y?: number;
  };
}
```

## Members [#members]

| Member            | Type                                                                            | Required | Description                                                                                                            | Related types                                                           |
| ----------------- | ------------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| `id`              | `string`                                                                        | Yes      | The `id` member uses the `string` contract.                                                                            | —                                                                       |
| `viewport`        | `ScrollViewport`                                                                | Yes      | The `viewport` member uses the `ScrollViewport` contract.                                                              | [`ScrollViewport`](/tuil/docs/reference/packages/scroll/api/scroll-viewport) |
| `extent`          | `ScrollExtent`                                                                  | Yes      | The `extent` member uses the `ScrollExtent` contract.                                                                  | [`ScrollExtent`](/tuil/docs/reference/packages/scroll/api/scroll-extent)     |
| `parentId`        | `string \| undefined`                                                           | No       | The `parentId` member uses the `string \| undefined` contract.                                                         | —                                                                       |
| `sticky`          | `Partial<Record<"top" \| "right" \| "bottom" \| "left", boolean>> \| undefined` | No       | The `sticky` member uses the `Partial<Record<"top" \| "right" \| "bottom" \| "left", boolean>> \| undefined` contract. | —                                                                       |
| `followFocus`     | `boolean \| undefined`                                                          | No       | The `followFocus` member uses the `boolean \| undefined` contract.                                                     | —                                                                       |
| `enabled`         | `boolean \| undefined`                                                          | No       | The `enabled` member uses the `boolean \| undefined` contract.                                                         | —                                                                       |
| `initialPosition` | `&#123; readonly x?: number; readonly y?: number; &#125; \| undefined`          | No       | The `initialPosition` member uses the `&#123; readonly x?: number; readonly y?: number; &#125; \| 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/ink/src/scroll.ts)

## Package [#package]

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