# SyGridApi

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

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

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

## 타입 정의

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

```typescript
export interface SyGridApi<
  TData = GridData,
  TContext = unknown,
  TValue = unknown,
  TFilterModel = unknown,
> extends HTMLElement,
    SyGridImperativeMethods<TData, TContext, TValue, TFilterModel> {
  rowData?: TData[];
  columnDefs?: Array<GridColumnDefinition<TData, TContext, TValue>>;
  context?: TContext;
  getRowId?: GridGetRowId<TData>;
  components?: GridComponentLocalDefinitions<
    TData,
    TValue,
    TFilterModel,
    TContext
  >;
  externalFilter?:
    | GridExternalFilterCallbacks<TData>
    | GridExternalFilterInstance<TData, TContext>;
  componentTimeoutMs?: number;
  addEventListener<K extends keyof SyGridEventMap<TData, TContext, TValue>>(
    type: K,
    listener:
      | SyGridEventListener<
          SyGridEventMap<TData, TContext, TValue>[K],
          TData,
          TContext,
          TValue
        >
      | null,
    options?: boolean | AddEventListenerOptions,
  ): void;
  addEventListener(
    type: string,
    listener: EventListenerOrEventListenerObject | null,
    options?: boolean | AddEventListenerOptions,
  ): void;
  removeEventListener<K extends keyof SyGridEventMap<TData, TContext, TValue>>(
    type: K,
    listener:
      | SyGridEventListener<
          SyGridEventMap<TData, TContext, TValue>[K],
          TData,
          TContext,
          TValue
        >
      | null,
    options?: boolean | EventListenerOptions,
  ): void;
  removeEventListener(
    type: string,
    listener: EventListenerOrEventListenerObject | null,
    options?: boolean | EventListenerOptions,
  ): void;
}
```

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

## 이 타입을 사용하는 API

- [getApi](https://grid.syidax.com/ko/docs/methods/getApi.md) — 현재 Grid의 타입 지정 API와 앱 context에 접근합니다. 초기화가 완료된 요소에서 읽으세요.

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

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

- [CellCallbackParams](https://grid.syidax.com/ko/docs/types/CellCallbackParams.md)
- [SyGridCustomEvent](https://grid.syidax.com/ko/docs/types/SyGridCustomEvent.md)
- [SyGridEventListener](https://grid.syidax.com/ko/docs/types/SyGridEventListener.md)
- [SyGridImperativeMethods](https://grid.syidax.com/ko/docs/types/SyGridImperativeMethods.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)

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

## 연결된 타입

- [GridData](https://grid.syidax.com/ko/docs/types/GridData.md)
- [SyGridImperativeMethods](https://grid.syidax.com/ko/docs/types/SyGridImperativeMethods.md)
- [GridColumnDefinition](https://grid.syidax.com/ko/docs/types/GridColumnDefinition.md)
- [GridGetRowId](https://grid.syidax.com/ko/docs/types/GridGetRowId.md)
- [GridComponentLocalDefinitions](https://grid.syidax.com/ko/docs/types/GridComponentLocalDefinitions.md)
- [GridExternalFilterCallbacks](https://grid.syidax.com/ko/docs/types/GridExternalFilterCallbacks.md)
- [GridExternalFilterInstance](https://grid.syidax.com/ko/docs/types/GridExternalFilterInstance.md)
- [SyGridEventMap](https://grid.syidax.com/ko/docs/types/SyGridEventMap.md)
- [SyGridEventListener](https://grid.syidax.com/ko/docs/types/SyGridEventListener.md)
