# GridEditorInstance

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

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

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

## 타입 정의

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

```typescript
export interface GridEditorInstance<
  TData = Record<string, unknown>,
  TValue = unknown,
  TContext = unknown,
> extends GridGuiComponent<
    GridEditorParams<TData, TValue, TContext>,
    HTMLElement
  > {
  afterGuiAttached?(): GridMaybePromise<void>;
  getValue(): GridMaybePromise<TValue>;
  isCancelBeforeStart?(): GridMaybePromise<boolean>;
  isCancelAfterEnd?(): GridMaybePromise<boolean>;
  isPopup?(): boolean;
  getPopupPosition?(): 'over' | 'under';
  getValidationErrors?(
    value: TValue,
  ): GridMaybePromise<ReadonlyArray<GridEditorValidationError> | null>;
  focusIn?(): void;
  focusOut?(): void;
}
```

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

## 이 타입을 사용하는 API

- [getCellEditorInstance](https://grid.syidax.com/ko/docs/methods/getCellEditorInstance.md) — 현재 마운트된 셀 편집기 인스턴스와 문맥을 읽습니다. 편집기가 없으면 null입니다.

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

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

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

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

## 연결된 타입

- [GridGuiComponent](https://grid.syidax.com/ko/docs/types/GridGuiComponent.md)
- [GridEditorParams](https://grid.syidax.com/ko/docs/types/GridEditorParams.md)
- [GridMaybePromise](https://grid.syidax.com/ko/docs/types/GridMaybePromise.md)
- [GridEditorValidationError](https://grid.syidax.com/ko/docs/types/GridEditorValidationError.md)
