# DataGridElement (Framework Adapters)

API for framework adapter developers (React, Angular, Vue, etc.).
These methods are used by framework integration libraries to register adapters
and manage column/renderer lifecycles.

See the [public API documentation](/grid/api/core/classes/datagridelement.md) for consumer-facing members.

## Methods

### registerAdapter()

Register a framework adapter for handling framework-specific components.
Adapters are checked in registration order when processing light DOM templates.

```ts
static registerAdapter(adapter: FrameworkAdapter): void
```

#### Parameters

| Name | Type | Description |
| ---- | ---- | ----------- |
| `adapter` | <code><a href="/grid/api/framework-adapters/interfaces/frameworkadapter/">FrameworkAdapter</a></code> |  |

#### Example

```typescript
// In @toolbox-web/grid-angular
import { AngularGridAdapter } from '@toolbox-web/grid-angular';

// One-time setup in app
GridElement.registerAdapter(new AngularGridAdapter(injector, appRef));
```

***

### getAdapters()

Get all registered framework adapters.
Used internally by light DOM parsing to find adapters that can handle templates.

```ts
static getAdapters(): readonly FrameworkAdapter[]
```

***

### clearAdapters()

Clear all registered adapters (primarily for testing).

```ts
static clearAdapters(): void
```

***

### refreshColumns()

Re-parse light DOM column elements and refresh the grid.
Call this after framework adapters have registered their templates.
Uses the render scheduler to batch with other pending updates.

```ts
refreshColumns(): void
```

***
