+++
# -----------------------------------------------------------------------
# Do not edit this file. It is automatically generated by API Documenter.
# -----------------------------------------------------------------------
title = "Registry"
keywords = ["grafana","documentation","sdk","@grafana/data"]
type = "docs"
+++

## Registry class

<b>Signature</b>

```typescript
export declare class Registry<T extends RegistryItem> 
```
<b>Import</b>

```typescript
import { Registry } from '@grafana/data';
```
<b>Constructors</b>

|  Constructor | Modifiers | Description |
|  --- | --- | --- |
|  [constructor(init)](#constructor-init) |  | Constructs a new instance of the <code>Registry</code> class |

<b>Properties</b>

|  Property | Modifiers | Type | Description |
|  --- | --- | --- | --- |
|  [setInit](#setinit-property) |  | <code>(init: () =&gt; T[]) =&gt; void</code> |  |

<b>Methods</b>

|  Method | Modifiers | Description |
|  --- | --- | --- |
|  [get(id)](#get-method) |  |  |
|  [getIfExists(id)](#getifexists-method) |  |  |
|  [isEmpty()](#isempty-method) |  |  |
|  [list(ids)](#list-method) |  | Return a list of values by ID, or all values if not specified |
|  [register(ext)](#register-method) |  |  |
|  [selectOptions(current, filter)](#selectoptions-method) |  |  |

### constructor(init)

Constructs a new instance of the `Registry` class

<b>Signature</b>

```typescript
constructor(init?: (() => T[]) | undefined);
```
<b>Parameters</b>

|  Parameter | Type | Description |
|  --- | --- | --- |
|  init | <code>(() =&gt; T[]) &#124; undefined</code> |  |

### setInit property

<b>Signature</b>

```typescript
setInit: (init: () => T[]) => void;
```

### get method

<b>Signature</b>

```typescript
get(id: string): T;
```
<b>Parameters</b>

|  Parameter | Type | Description |
|  --- | --- | --- |
|  id | <code>string</code> |  |

<b>Returns:</b>

`T`

### getIfExists method

<b>Signature</b>

```typescript
getIfExists(id: string | undefined): T | undefined;
```
<b>Parameters</b>

|  Parameter | Type | Description |
|  --- | --- | --- |
|  id | <code>string &#124; undefined</code> |  |

<b>Returns:</b>

`T | undefined`

### isEmpty method

<b>Signature</b>

```typescript
isEmpty(): boolean;
```
<b>Returns:</b>

`boolean`

### list method

Return a list of values by ID, or all values if not specified

<b>Signature</b>

```typescript
list(ids?: any[]): T[];
```
<b>Parameters</b>

|  Parameter | Type | Description |
|  --- | --- | --- |
|  ids | <code>any[]</code> |  |

<b>Returns:</b>

`T[]`

### register method

<b>Signature</b>

```typescript
register(ext: T): void;
```
<b>Parameters</b>

|  Parameter | Type | Description |
|  --- | --- | --- |
|  ext | <code>T</code> |  |

<b>Returns:</b>

`void`

### selectOptions method

<b>Signature</b>

```typescript
selectOptions(current?: string[], filter?: (ext: T) => boolean): RegistrySelectInfo;
```
<b>Parameters</b>

|  Parameter | Type | Description |
|  --- | --- | --- |
|  current | <code>string[]</code> |  |
|  filter | <code>(ext: T) =&gt; boolean</code> |  |

<b>Returns:</b>

`RegistrySelectInfo`

