# ViewportDatasource

ViewportDatasource의 필드와 허용 값, 이 타입을 사용하는 API입니다.

Canonical: https://grid.syidax.com/ko/docs/types/ViewportDatasource/

<a id="definition"></a>

## 타입 정의

물음표(?)는 선택 항목이고 readonly는 직접 변경하지 않는 값입니다. 유니온(|)은 허용된 형태 중 하나를 뜻합니다. 함수는 해당 시점에 Grid가 호출할 콜백입니다.

```typescript
export interface ViewportDatasource<TRow> {
  init(callbacks: {
    setRowCount(count: number): void;
    setRowData(startIndex: number, rows: TRow[]): void;
  }): void;
  setViewportRange(
    firstRow: number,
    lastRow: number,
    request?: ViewportRequestContext,
  ): void;
  destroy?(): void;
}
```

<a id="used-by"></a>

## 이 타입을 사용하는 API

- [viewportDatasource](https://grid.syidax.com/ko/docs/options/viewportDatasource.md) — 현재 화면에 보이는 행 범위에 맞춰 데이터를 공급하는 뷰포트 모델입니다. 초기화·범위 변경·정리를 구현합니다.

<a id="related"></a>

## 연결된 타입

- [ViewportRequestContext](https://grid.syidax.com/ko/docs/types/ViewportRequestContext.md)
