# GridData

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

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

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

## 타입 정의

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

```typescript
export type GridData = Record<string, unknown>;
```

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

## 이 타입을 사용하는 API

- [rowData](https://grid.syidax.com/ko/docs/options/rowData.md) — 표에 공급할 원본 행 배열입니다. 전체 조회 결과를 교체할 때 새 배열을 전달하고, 일부 행만 바꿀 때는 applyTransaction을 사용합니다.
- [components](https://grid.syidax.com/ko/docs/options/components.md) — 이 Grid에서 사용할 사용자 정의 렌더러·편집기·필터 등의 로컬 컴포넌트 정의를 등록합니다.
- [externalFilter](https://grid.syidax.com/ko/docs/options/externalFilter.md) — 앱 바깥의 검색 조건으로 각 행의 통과 여부를 판단합니다. 필터 활성 여부와 행 판정 콜백 또는 수명 주기를 가진 인스턴스를 전달합니다.
- [rowHeightFn](https://grid.syidax.com/ko/docs/options/rowHeightFn.md) — 행 인덱스와 데이터를 받아 개별 행 높이를 계산합니다. 높이에 영향을 주는 데이터가 바뀌면 refreshRowHeights로 다시 계산합니다.
- [getRowId](https://grid.syidax.com/ko/docs/options/getRowId.md) — 데이터에서 안정적이고 고유한 행 ID를 반환합니다. 정렬·필터·수정 후에도 같은 업무 행은 같은 ID여야 합니다.
- [getApi](https://grid.syidax.com/ko/docs/methods/getApi.md) — 현재 Grid의 타입 지정 API와 앱 context에 접근합니다. 초기화가 완료된 요소에서 읽으세요.
- [getColumn](https://grid.syidax.com/ko/docs/methods/getColumn.md) — 식별자로 현재 열 객체를 찾습니다. 없는 열은 null이며 초기 columnDefs 복사본이 아닌 현재 상태를 조회합니다.
- [getColumns](https://grid.syidax.com/ko/docs/methods/getColumns.md) — 현재 열 객체 목록을 읽습니다. 열 너비·순서·표시 상태를 앱과 연결할 때 사용합니다.
- [getColumnGroup](https://grid.syidax.com/ko/docs/methods/getColumnGroup.md) — 식별자로 현재 열 그룹 객체를 찾습니다. 없는 그룹은 null입니다.
- [getColumnGroups](https://grid.syidax.com/ko/docs/methods/getColumnGroups.md) — 현재 열 그룹 객체 목록을 읽습니다.
- [getRow](https://grid.syidax.com/ko/docs/methods/getRow.md) — 안정적인 행 ID로 행 객체를 찾습니다. 화면 인덱스로 찾는 API와 구분합니다.
- [getDisplayedRowAtIndex](https://grid.syidax.com/ko/docs/methods/getDisplayedRowAtIndex.md) — 현재 표시 순서의 인덱스로 행 객체를 찾습니다. 정렬·필터·그룹에 따라 같은 인덱스의 행은 달라질 수 있습니다.
- [forEachRow](https://grid.syidax.com/ko/docs/methods/forEachRow.md) — 행 객체를 순회하며 콜백을 실행합니다. 현재 화면의 표시 순서가 필요하면 forEachDisplayedRow를 사용합니다.
- [forEachDisplayedRow](https://grid.syidax.com/ko/docs/methods/forEachDisplayedRow.md) — 현재 표시 행을 순회합니다. 원본 데이터 순서와 표시 순서를 구분해야 하는 앱 기능에 사용합니다.
- [registerGridComponent](https://grid.syidax.com/ko/docs/methods/registerGridComponent.md) — 공개 컴포넌트 계약에 따라 사용자 Grid 컴포넌트를 등록합니다.
- [replaceGridComponent](https://grid.syidax.com/ko/docs/methods/replaceGridComponent.md) — 등록된 사용자 컴포넌트 정의를 교체합니다.
- [getCellRendererInstance](https://grid.syidax.com/ko/docs/methods/getCellRendererInstance.md) — 현재 마운트된 셀 렌더러 인스턴스를 조회합니다. 가상화로 화면 밖 셀은 마운트되지 않을 수 있습니다.
- [getCellEditorInstance](https://grid.syidax.com/ko/docs/methods/getCellEditorInstance.md) — 현재 마운트된 셀 편집기 인스턴스와 문맥을 읽습니다. 편집기가 없으면 null입니다.
- [getColumnFilterInstance](https://grid.syidax.com/ko/docs/methods/getColumnFilterInstance.md) — 열의 사용자 필터 인스턴스를 조회합니다. 아직 생성되지 않았거나 없는 경우 null일 수 있습니다.
- [gridObjectChanged](https://grid.syidax.com/ko/docs/events/gridObjectChanged.md) — 현재 행·열 등 공개 객체의 상태가 바뀌었을 때 발생합니다. detail의 대상과 변경 내용을 읽습니다.

<a id="parents"></a>

## 이 타입을 포함하는 계약

- [CellCallbackParams](https://grid.syidax.com/ko/docs/types/CellCallbackParams.md)
- [ColumnDef](https://grid.syidax.com/ko/docs/types/ColumnDef.md)
- [GridCellClickedDetail](https://grid.syidax.com/ko/docs/types/GridCellClickedDetail.md)
- [GridCellDoubleClickedDetail](https://grid.syidax.com/ko/docs/types/GridCellDoubleClickedDetail.md)
- [GridCellEditingRequestedDetail](https://grid.syidax.com/ko/docs/types/GridCellEditingRequestedDetail.md)
- [GridCellEditorDeclaration](https://grid.syidax.com/ko/docs/types/GridCellEditorDeclaration.md)
- [GridCellValueChangedDetail](https://grid.syidax.com/ko/docs/types/GridCellValueChangedDetail.md)
- [GridColumnDefinition](https://grid.syidax.com/ko/docs/types/GridColumnDefinition.md)
- [GridColumnGroupDef](https://grid.syidax.com/ko/docs/types/GridColumnGroupDef.md)
- [GridColumnGroupRef](https://grid.syidax.com/ko/docs/types/GridColumnGroupRef.md)
- [GridColumnRef](https://grid.syidax.com/ko/docs/types/GridColumnRef.md)
- [GridLiveObjectEvent](https://grid.syidax.com/ko/docs/types/GridLiveObjectEvent.md)
- [GridLiveObjectListener](https://grid.syidax.com/ko/docs/types/GridLiveObjectListener.md)
- [GridLiveRef](https://grid.syidax.com/ko/docs/types/GridLiveRef.md)
- [GridRemoteEditAppliedDetail](https://grid.syidax.com/ko/docs/types/GridRemoteEditAppliedDetail.md)
- [GridRowClickedDetail](https://grid.syidax.com/ko/docs/types/GridRowClickedDetail.md)
- [GridRowDataChangedDetail](https://grid.syidax.com/ko/docs/types/GridRowDataChangedDetail.md)
- [GridRowRef](https://grid.syidax.com/ko/docs/types/GridRowRef.md)
- [GridRowTransaction](https://grid.syidax.com/ko/docs/types/GridRowTransaction.md)
- [SyGridApi](https://grid.syidax.com/ko/docs/types/SyGridApi.md)
- [SyGridApiPdfDownloadOptions](https://grid.syidax.com/ko/docs/types/SyGridApiPdfDownloadOptions.md)
- [SyGridApiPdfExportOptions](https://grid.syidax.com/ko/docs/types/SyGridApiPdfExportOptions.md)
- [SyGridCellClickedEventDetail](https://grid.syidax.com/ko/docs/types/SyGridCellClickedEventDetail.md)
- [SyGridCellDoubleClickedEventDetail](https://grid.syidax.com/ko/docs/types/SyGridCellDoubleClickedEventDetail.md)
- [SyGridCellEditingRequestedEventDetail](https://grid.syidax.com/ko/docs/types/SyGridCellEditingRequestedEventDetail.md)
- [SyGridCellTooltipTarget](https://grid.syidax.com/ko/docs/types/SyGridCellTooltipTarget.md)
- [SyGridCellValueChangedEventDetail](https://grid.syidax.com/ko/docs/types/SyGridCellValueChangedEventDetail.md)
- [SyGridColSpanParams](https://grid.syidax.com/ko/docs/types/SyGridColSpanParams.md)
- [SyGridCustomEvent](https://grid.syidax.com/ko/docs/types/SyGridCustomEvent.md)
- [SyGridEventListener](https://grid.syidax.com/ko/docs/types/SyGridEventListener.md)
- [SyGridEventMap](https://grid.syidax.com/ko/docs/types/SyGridEventMap.md)
- [SyGridFullWidthRenderParams](https://grid.syidax.com/ko/docs/types/SyGridFullWidthRenderParams.md)
- [SyGridFullWidthRenderer](https://grid.syidax.com/ko/docs/types/SyGridFullWidthRenderer.md)
- [SyGridFullWidthRowInfo](https://grid.syidax.com/ko/docs/types/SyGridFullWidthRowInfo.md)
- [SyGridImperativeMethods](https://grid.syidax.com/ko/docs/types/SyGridImperativeMethods.md)
- [SyGridPinnedRow](https://grid.syidax.com/ko/docs/types/SyGridPinnedRow.md)
- [SyGridPinnedRowChange](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowChange.md)
- [SyGridPinnedRowInfo](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowInfo.md)
- [SyGridPinnedRowInput](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowInput.md)
- [SyGridPinnedRowSetInput](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowSetInput.md)
- [SyGridPinnedRowsChangedDetail](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowsChangedDetail.md)
- [SyGridPinnedRowsReport](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowsReport.md)
- [SyGridPinnedRowsResult](https://grid.syidax.com/ko/docs/types/SyGridPinnedRowsResult.md)
- [SyGridRowClickedEventDetail](https://grid.syidax.com/ko/docs/types/SyGridRowClickedEventDetail.md)
- [SyGridRowDataChangedEventDetail](https://grid.syidax.com/ko/docs/types/SyGridRowDataChangedEventDetail.md)
- [SyGridRowSpanParams](https://grid.syidax.com/ko/docs/types/SyGridRowSpanParams.md)
- [SyGridRowTransactionResult](https://grid.syidax.com/ko/docs/types/SyGridRowTransactionResult.md)
- [ValueFormatterParams](https://grid.syidax.com/ko/docs/types/ValueFormatterParams.md)
- [ValueGetterParams](https://grid.syidax.com/ko/docs/types/ValueGetterParams.md)
- [ValueParserParams](https://grid.syidax.com/ko/docs/types/ValueParserParams.md)
- [ValueSetterParams](https://grid.syidax.com/ko/docs/types/ValueSetterParams.md)
