---
title: "IPreviewContainersSource | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/IPreviewContainersSource/"
---

# IPreviewContainersSource

> `void`

## Interfaces

### IPreviewContainersSource

#### Methods

##### addPreviewContainersChanged()

```ts
addPreviewContainersChanged(listener): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `listener` | (`data`) => `any` |

###### Returns

##### ensureUpdatedAndExecuteAsync()

```ts
ensureUpdatedAndExecuteAsync(asyncCallback): Promise<void>;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `asyncCallback` | () => [`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\> |

###### Returns

[`Promise`](https://customerscanvas.com/docs/on-premises/design-atoms-js/reference/design-atoms/finally.md#promise)\<`void`\>

##### getPreviewContainers()

```ts
getPreviewContainers(): Container[];
```

###### Returns

`Container`[]

##### removePreviewContainersChanged()

```ts
removePreviewContainersChanged(listener): void;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `listener` | (`data`) => `any` |

###### Returns

`void`

***

### IPreviewContainersSourceFactory

#### Methods

##### create()

```ts
create(sourceSurface): IPreviewContainersSource;
```

###### Parameters

| Parameter | Type |
| ------ | ------ |
| `sourceSurface` | `Surface` |

###### Returns

[`IPreviewContainersSource`](#ipreviewcontainerssource)
