# ScrollAreaOptions

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

interface exported by @mwillbanks/tuil-scroll.



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

## interface [#interface]

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

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

## 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" \| "bottom" \| "left" \| "right", boolean>> \| undefined` | No       | The `sticky` member uses the `Partial<Record<"top" \| "bottom" \| "left" \| "right", boolean>> \| undefined` contract. | —                                                                       |
| `followFocus` | `boolean \| undefined`                                                          | No       | The `followFocus` 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]

* [`ScrollExtent`](/tuil/docs/reference/packages/scroll/api/scroll-extent)
* [`ScrollViewport`](/tuil/docs/reference/packages/scroll/api/scroll-viewport)

## Source [#source]

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

## Package [#package]

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